Why does dict(k=4, z=2).update(dict(l=1)) return None in Python?

前端 未结 3 1297
别那么骄傲
别那么骄傲 2020-12-03 23:42

Why does dict(k=4, z=2).update(dict(l=1)) return None? It seems as if it should return dict(k=4, z=2, l=1)? I\'m using Python 2.7 shou

3条回答
  •  星月不相逢
    2020-12-04 00:37

    The .update() method alters the dictionary in place and returns None. The dictionary itself is altered, no altered dictionary needs to be returned.

    Assign the dictionary first:

    a_dict = dict(k=4, z=2)
    a_dict.update(dict(l=1))
    print a_dict
    

    This is clearly documented, see the dict.update() method documentation:

    Update the dictionary with the key/value pairs from other, overwriting existing keys. Return None.

提交回复
热议问题