我有一个看起来像这样的方法:
def order_by(*args):
print list(args)
有没有办法可以传递三个项目的列表,并将列表中的每个项目作为单独的参数传递?
params = ['a', 'b', 'c']
相当于
order_by('a', 'b', 'c')
有任何想法吗?
我有一个看起来像这样的方法:
def order_by(*args):
print list(args)
有没有办法可以传递三个项目的列表,并将列表中的每个项目作为单独的参数传递?
params = ['a', 'b', 'c']
相当于
order_by('a', 'b', 'c')
有任何想法吗?
该*arguments
语法也可用于调用函数,只要params
是可迭代的:
order_by(*params)
请参阅调用语法规范。
对于实际字典,请使用以下**kwargs
语法:
params = dict(a='a', b='b', c='c')
somemethod(**params)
wheresomemethod
接受a
,b
和c
arguments 或有一个**kw
包罗万象的论点。请注意,如果您的所有函数定义都是位置参数包罗万象,这将**params
不起作用。*args
使用 Python 内置apply
:
apply(order_by, params)