0

在下面的代码中,我如何将字典传递给func2. 应该怎么func2称呼?

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

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

3 回答 3

2

就像它接受它们一样:

func2(1,**u)
于 2011-09-27T06:12:54.250 回答
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)
于 2011-09-27T06:35:01.723 回答
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)
于 2011-09-27T06:30:03.193 回答