【发布时间】:2020-05-21 21:10:14
【问题描述】:
我有两个字典-
dict1 = {'a':'value','b':'value','d':'value'} 和
dict2 = {'p':'blank','q':'blank','r':'blank','s':'blank'}。他们的密钥存储在两个列表中——list1 = ['a','b','c','d'] 和list2 = ['p','q','r','s']。 dict1 可能并不总是包含所有键值对。
我想添加从dict1 到dict2 的条目,if 键存在于 dict1 else 我想要“空白”
我写了这段代码:
for i in list1:
if i in dict1.keys():
dict2[i] = dict1[i]
else:
dict2[i] = "blank"
这将给我dict2 和来自list1 的密钥。如何修改此代码以保留条件但保留与dict2 关联的键,即['p','q','r','s']?
我想要的输出
dict2 = {'p':1,'q':2,'r':'blank','s':4}
两个字典中的键数总是相同的。
另外,有没有更 Pythonic 的方式来做到这一点? 看了here的一些回答,但没完全看懂。
【问题讨论】:
-
你能发布预期的输出吗?只是为了澄清一些事情:)
标签: python dictionary