当我运行这段代码时
我得到的结果如下:
def func(x, y, *w, **z):
print x
print y
if w:
print w
if z:
print z
else:
print "None"
func(10,20, 1,2,3,{'k':'a'})
我得到的结果如下:
10 20 (1, 2, 3, {'k': 'a'}) None但是,我期望的结果如下,即列表参数(1,2,3)匹配*w,字典匹配**z。
10 20 (1,2,3) {'k':'a'}问:出了什么问题?我该如何将列表和字典作为参数传递?
Added
func(10,20, 10,20,30, k='a')
看起来正在运作
*
和**
语法的人,可以参考这个链接:https://dev59.com/eXM_5IYBdhLWcg3w-4hg#1141556 - Jonik