setdefault()不带关键字参数

时间:2014-06-11 14:46:24

标签: python python-2.7 setdefault

我有以下代码段:

mirna2age = {}
for i in agesdb:
    mirna2age.setdefault(i[0],default=[]).append(i[1])

然而,Python返回

TypeError: setdefault() takes no keyword arguments

我不确定为什么。有没有人有任何想法?

2 个答案:

答案 0 :(得分:6)

设置默认值应该像:

mydict.setdefault(key, defaultvalue)

不要使用kwargs,只提供默认值作为第二个参数。

答案 1 :(得分:1)

参数是位置的,因此将调用更改为:

    mirna2age.setdefault(i[0], []).append(i[1])

消息告诉你这个函数没有定义命名参数