热线电话:13121318867

登录
2018-10-23 阅读量: 769
python错误解析(九)

代码如下:

>>> def f(a,b,c,d):  
... print a,b,c,d
...
>>> args = (1,2,3,4)
>>> f(**args)
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: f() argument after ** must be a mapping, not tuple

【错误分析】错误原因**匹配并收集在字典中所有包含位置的参数,但传递进去的却是个元组。

所以修改传递参数如下:

代码如下:

>>> args = {'a':1,'b':2,'c':3}  
>>> args['d'] = 4
>>> f(**args)
1 2 3 4
0.0000
6
关注作者
收藏
评论(0)

发表评论

暂无数据
推荐帖子