将字典作为函数参数传递并在Python中调用该函数

时间:2011-09-27 06:08:43

标签: python dictionary keyword-argument

在以下代码中,如何将字典传递给func2。应该如何调用func2

def func2(a,**c):
 if len(c) > 0:
   print len(c)
   print c

u={'a':1,'b':2}
func2(1,u)

3 个答案:

答案 0 :(得分:2)

正如它接受它们一样:

func2(1,**u)

答案 1 :(得分:1)

这不会运行,因为名称a有多个参数。

但是如果你把它改成:

def func2(x,**c):
    if len(c) > 0:
    print len(c)
        print c

然后你把它称为:

func2(1, a=1, b=2)

u={'a':1,'b':2}
func2(1, **u)

答案 2 :(得分:0)

这可能会对您有所帮助:

 def fun(*a, **kw):
     print a, kw

 a=[1,2,3]
 b=dict(a=1, b=2, c=3)

 fun(*a)
 fun(**kw)
 fun(*a, **kw)