这个问题在这里已有答案:
我想在python中将项添加到现有字典中 . 例如,这是我的字典:
default_data = { 'item1': 1, 'item2': 2, }
我想添加新项目,以便:
default_data = default_data + {'item3':3}
怎么做到这一点?
default_data['item3'] = 3
很容易py .
另一种可能的方案
default_data.update({'item3': 3})
如果你想一次插入多个项目,这很好 .
它可以很简单:
正如Chris' answer所说,您可以使用update添加多个项目 . 一个例子:
default_data.update({'item4': 4, 'item5': 5})
请参阅有关dictionaries as data structures和dictionaries as built-in types的文档 .
答案必须这么久 .
我突然想到你可能实际上已经在询问如何为字典实现 + 运算符,以下似乎有效:
+
>>> class Dict(dict): ... def __add__(self, other): ... copy = self.copy() ... copy.update(other) ... return copy ... def __radd__(self, other): ... copy = other.copy() ... copy.update(self) ... return copy ... >>> default_data = Dict({'item1': 1, 'item2': 2}) >>> default_data + {'item3': 3} {'item2': 2, 'item3': 3, 'item1': 1} >>> {'test1': 1} + Dict(test2=2) {'test1': 1, 'test2': 2}
请注意,这比使用 dict[key] = value 或 dict.update() 更有开销,因此我建议不要使用此解决方案,除非您打算创建新的字典 .
dict[key] = value
dict.update()
4 回答
很容易py .
另一种可能的方案
如果你想一次插入多个项目,这很好 .
它可以很简单:
正如Chris' answer所说,您可以使用update添加多个项目 . 一个例子:
请参阅有关dictionaries as data structures和dictionaries as built-in types的文档 .
答案必须这么久 .
我突然想到你可能实际上已经在询问如何为字典实现
+
运算符,以下似乎有效:请注意,这比使用
dict[key] = value
或dict.update()
更有开销,因此我建议不要使用此解决方案,除非您打算创建新的字典 .