有没有办法将相同的参数n次传递给函数?
例如:
if len(menu) == 1:
gtk.ListStore(str)
elif len(menu) == 2:
gtk.ListStore(str, str)
elif len(menu) == 3:
gtk.ListStore(str, str, str)
像这样,但“自动”......
答案 0 :(得分:2)
我确定你的意思是:
gtk.ListStore(*menu)
序列可以 splatted 到函数调用的位置参数中。 splat必须位于位置参数的末尾,即:
foo(1, 2, *bar)
没关系,但你做不到
foo(1, *bar, 2)
答案 1 :(得分:1)
def ListStore(*str_collection): #collect arguments passed into str_collection which is a tuple
for s in str_collection:
print(s)
ListStore("A","B","C")
输出:
>>>
A
B
C
str_collection
的类型为:
>>>
<type 'tuple'>
答案 2 :(得分:0)
使用以下语法:
gtk.ListStore(*[str] * len(menu))