我想传递变异数量的参数,然后打印它们(如果某些条件为true)。当我尝试这样做时:
def my_print(*args)
print args
它打印一个元组。如何将Python Act my_print(a,b)
作为print a,b
?
您可以做到这一点:
from __future__ import print_function
print(*args)
这可以为您提供3.x样式打印功能,因此您可以解开参数。请注意,然后您需要在该模块中的任何地方使用3.x语法。
在Python 2.x中您可以使用str.join
:
def my_print(*args):
print ' '.join(map(str, args))
如果您使用的是python 3.x,那么它甚至更容易,因为有一个 print
函数:
def my_print(*args):
print(*args)
其他答案还提到您可以from __future__ import print_function
,但这是您所有使用print
语句的现有代码的缺点。
使用内置打印功能:
from __future__ import print_function
my_print = print
或
my_print = getattr(__builtins__, 'print')
您可以尝试
for _ in len(range(args)):
print a[_],
,但看起来其他答案更正确