我尝试像这样总结两个字典:

my_new_dict = dict(my_existing_dict.items() + my_new_dict.items())
但收到错误
TypeError: unsupported operand type(s) for +: 'dict_items' and 'dict_items'
我做错了什么?

最佳答案

在python3中,dict.items()返回一个类型为dict_items的对象,该对象显然无法添加。 (在python 2中,它返回了可以添加的list)。

添加一对适用于py2k和py3k的词典的替代方法:

d = dict1.copy()
d.update(dict2)

当然,在按键碰撞的情况下,您想要发生的事情有些含糊。例如如果两个字典都具有key1,应将其key1保留在输出中?还是应该同时使用它们的两个值?在后一种情况下,您可能需要collections模块中的某些东西(defaultdictCounter)

关于python - TypeError : unsupported operand type(s) for +: 'dict_items' and 'dict_items' ,我们在Stack Overflow上找到一个类似的问题:https://stackoverflow.com/questions/13361510/

10-12 05:26