等于更新dict的变量不起作用,为什么



想象一下我有

dict1 = {'uno':[1,2,3],'dos':[4,5,6]}

dictA = {'AA':'ZZZZZ'}

这项工作:

dict1.update(dictA)

结果:{'uno': [1, 2, 3], 'dos': [4, 5, 6], 'AA':'ZZZZZ'}

但这不起作用:

B = dict1.update(dictA)

结果不是错误,但result是None,这使得这种行为(IMMO(变得奇怪和危险,因为代码不会崩溃。

那么,为什么返回None而不给出错误呢?

注:看起来要走的路是:

C = dict1.update(dictA)
B = {}
B.update(dict1)
B.update(dictA)
B

C为无B在这里还好

使用update时,它会更新作为参数给定的字典dict1,并返回None:

文件:

dict。更新([映射](映射必需。另一个字典对象或键:值对的可迭代对象>(长度为2的可迭代项(。如果指定了关键字参数,则字典为>然后用那些键:值对进行更新。返回值无

代码:

dict1 = {'uno':[1,2,3],'dos':[4,5,6]}
dict1.update({'tres':[7,8,9]})
# {'uno': [1, 2, 3], 'dos': [4, 5, 6], 'tres': [7, 8, 9]}
print(dict1)

最新更新