3 回答

TA贡献1906条经验 获得超3个赞
我的第一个直觉是寻找类似 Javascript “spread” 的 Python 运算符:
https://mlpipes.com/object-spread-operator-python/
这里的例子:
old_dict = {'hello': 'world', 'foo': 'bar'} new_dict = {**old_dict, 'foo': 'baz'}
对于您的代码,您应该尝试以下操作:
DICTLIST[d] = {**a,**b,**c}

TA贡献1765条经验 获得超5个赞
你可以在这里使用 **kwargs
x={1:5,2:10}
y={2:10,3:20}
z={**x, **y}
如果您想进一步优化性能,因为有多个查询,您应该使用“缓存+字典”,因为查找表总是比任何操作都快

TA贡献1886条经验 获得超2个赞
尝试这个 -
def mergeDict(dict1, dict2):
dict3 = {**dict1, **dict2}
for key, value in dict3.items():
if key in dict1 and key in dict2:
dict3[key] = value + dict1[key]
return dict3
然后你可以这样打电话 -
# Create first dictionary
dict1 = {1:5,2:10}
# Create second dictionary
dict2 = {2:10,3:20}
# Create third dictionary
dict3 = {1:-2}
dict4 = mergeDict(dict3, mergeDict(dict1, dict2))
请注意,减法逻辑的第三个字典中有“-2”。
添加回答
举报