3

我有以下代码片段:

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

然而,Python 返回

TypeError: setdefault() takes no keyword arguments

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

4

2 回答 2

7

设置默认值应该像这样使用:

mydict.setdefault(key, defaultvalue)

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

于 2014-06-11T14:49:16.753 回答
2

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

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

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

于 2014-06-11T14:51:36.307 回答