将可变数量的参数传递给函数,然后使用这些参数调用函数内的函数

时间:2014-05-07 11:32:41

标签: python function parameters python-2.x

如果有人回答我的道歉 - 我怀疑这很简单 - 但我看不出怎么做。

更容易证明我想做什么。

vflag=True

def printv(*prargs):
    if vflag:
        print prargs
#       print *prargs gives a syntax error, unsurprisingly


printv("hello", "there", "world")
printv("hello", "again")

我希望输出为

hello there world
hello again

我得到(当然)

('hello', 'there', 'world')
('hello', 'again')

1 个答案:

答案 0 :(得分:1)

你应该这样做:

def printv(*prargs):
    if vflag:
        print ' '.join(prargs)

>>> printv("hello", "there", "world")
hello there world

string.join(iterable)返回列表中由指定字符串分隔的所有元素的字符串,在本例中为' '(空格)。