Python 对函数返回的数据进行排序

Python 对函数返回的数据进行排序,python,Python,我有一个函数,它有两个参数;一份口述,一份清单 目的是能够订购返回的数据进行打印: tOrderReq = [1, 4, 5, 2] tReturnData = tOut(hInput[0], (tOrderReq)) print("%s %s %s %s" % tReturnData) 但是,我得到以下错误: Traceback (most recent call last): File "C:\local\mdev.py", line 76, in <module> Type

我有一个函数,它有两个参数;一份口述,一份清单

目的是能够订购返回的数据进行打印:

tOrderReq = [1, 4, 5, 2]
tReturnData = tOut(hInput[0], (tOrderReq))
print("%s %s %s %s" % tReturnData) 
但是,我得到以下错误:

Traceback (most recent call last):
File "C:\local\mdev.py", line 76, in <module>
TypeError: not enough arguments for format string

非常感谢

IIUC,您的问题是Python需要一个带有
%
-插值的元组:

>>> tReturnData = [1,2,3,4]
>>> print("%s %s %s %s" % tReturnData)
Traceback (most recent call last):
  File "<ipython-input-13-a0f54ded128d>", line 1, in <module>
    print("%s %s %s %s" % tReturnData)
TypeError: not enough arguments for format string

>>> print("%s %s %s %s" % tuple(tReturnData))
1 2 3 4
或者使用
str.format
(这是更精细控制的首选现代风格,无可否认,我们在这里没有使用):


你有没有用
tOut(hInput[0],[tOrderReq])
来代替它?什么是完全回溯?如果是[tOrderReq],则错误为:TypeError:格式字符串的参数不足。回溯是我贴在上面的,我没有说要用它,我只是想猜测一下为什么你会看到你的异常,因为你没有提供足够的信息。什么是完全回溯?你没有提供完全回溯,只有最后两行。完全回溯从行回溯开始(最近一次调用最后一次):.Unrelated,但是:作为规则,不要使用可变的默认参数,如
\u order=[]
。他们迟早会给你带来麻烦的(详情请参阅)。谢谢你,是tuple(tReturnData)解决了这个问题——顺便说一句,我使用的是2.7.6,我写的东西更像是Python3的标准吗?@Oli:3中使用括号和
print
更常见,因为
print
现在是一个函数,因此需要它们。
>>> tReturnData = [1,2,3,4]
>>> print("%s %s %s %s" % tReturnData)
Traceback (most recent call last):
  File "<ipython-input-13-a0f54ded128d>", line 1, in <module>
    print("%s %s %s %s" % tReturnData)
TypeError: not enough arguments for format string

>>> print("%s %s %s %s" % tuple(tReturnData))
1 2 3 4
>>> print(*tReturnData)
1 2 3 4
>>> print("{} {} {} {}".format(*tReturnData))
1 2 3 4