gpt4 book ai didi

python - 如何在字典理解中写两个其他条件

转载 作者:太空宇宙 更新时间:2023-11-03 12:26:03 25 4
gpt4 key购买 nike

2 字典 d1,d2,创建一个具有相同键的新字典。

d1 = {'product': '8', 'order': '8', 'tracking': '3'}
d2 = {'order': 1, 'product': 1,'customer':'5'}
dict3 = { k: [ d1[k], d2[k] ] if k in d2 else [d1[k]] for k in d1 }
dict3
{'product': ['8', 1], 'order': ['8', 1], 'tracking': ['3']}

如何通过 else [d2[k]] for k in d2 得到预期的结果

我的期望值

{'product': ['8', 1], 'order': ['8', 1], 'tracking': ['3'],'customer':['5']}

免责声明。我已经完成了 defaultdict。请仅在 dict comprehension 中给出答案

最佳答案

可以使用嵌套的三元... if ... else (... if ... else ...),但是如果有三本词典,还是四本?最好使用嵌套列表理解并遍历不同的字典。

>>> d1 = {'product': '8', 'order': '8', 'tracking': '3'}
>>> d2 = {'order': 1, 'product': 1,'customer':'5'}
>>> {k: [d[k] for d in (d1, d2) if k in d] for k in set(d1) | set(d2)}
{'customer': ['5'], 'order': ['8', 1], 'product': ['8', 1], 'tracking': ['3']}

关于python - 如何在字典理解中写两个其他条件,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58518941/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com