def myfunc7(name,city='beijing',*args,age,sex,**kws):
print('name:',name,'city:',city,'args :',args,'age:',age,'sex :',sex,'other :',kws);
如上方法
myfunc7('lamb',*[1,2,3],age='25',sex='m',**{'money':2000,'height':172});#city输出是1如何解决 方法调用上有问题。。
Python 3.6.2rc1
原因是什么?如何解决?
我想着city输出的应该是 beijing 实际上输出的是1
是正常的,被覆盖掉了。
参考(廖雪峰的Python教程):
另外你的参数定义有问题,
参考:
在Python中定义函数,可以用必选参数、默认参数、可变参数、关键字参数和命名关键字参数,这5种参数都可以组合使用。但是请注意,参数定义的顺序必须是:必选参数、默认参数、可变参数、命名关键字参数和关键字参数。
def myfunc7(name,age,sex,city='beijing',*args,**kws):
这样定义去试试.