setdefault() 不接受关键字参数
我有以下这段代码:
mirna2age = {}
for i in agesdb:
mirna2age.setdefault(i[0],default=[]).append(i[1])
但是,Python 返回了
TypeError: setdefault() takes no keyword arguments
我不太明白为什么会这样。有没有人能给点建议?
2 个回答
2
这个提示是说,函数的参数是按位置来传递的,所以你需要把调用的方式改成:
mirna2age.setdefault(i[0], []).append(i[1])
这个信息是在告诉你,这个函数没有定义命名参数。
7
设置默认值应该这样使用:
mydict.setdefault(key, defaultvalue)
不要使用关键字参数,只需将默认值作为第二个参数提供即可。