我使用以下代码从键列表初始化字典
z=df1[2].value_counts().keys().tolist()
mydict=dict.fromkeys(z,None)
此外,我用过
`value=df2[2].value_counts().keys().tolist()
counts=df2[2].value_counts().tolist()`
for j,items in value:
if mydict.has_key(items):
mydict.setdefault(items,[]).append(counts[j])
Run Code Online (Sandbox Code Playgroud)
它产生以下错误
mydict.setdefault(items,[]).append(counts [j])AttributeError:'NoneType'对象没有属性'append'
use*_*130 16
追加适用于数组,但不适用于字典.
要添加到字典中使用 dict_name['item'] = 3
另一个好的解决方案(特别是如果你想一次插入多个项目)将是: dict_name.update({'item': 3})
当您正在使用的类或对象的实例的值为None
.时,会出现NoneType错误.这可能意味着从未分配过值.
另外,我相信你错过了一个括号: mydict.setdefault(items,]).append(counts[j])
它应该是:mydict.setdefault(items,[]).append(counts[j])
mydict = {}
print(mydict) # {}
Run Code Online (Sandbox Code Playgroud)
追加一键:
mydict['key1'] = 1
print(mydict) # {'key1': 1}
Run Code Online (Sandbox Code Playgroud)
附加多个键:
mydict.update({'key2': 2, 'key3': 3})
print(mydict) # {'key1': 1, 'key2': 2, 'key3': 3}
Run Code Online (Sandbox Code Playgroud)