gpt4 book ai didi

python - 比较python中的2个字典并创建一个包含字典值的列表

转载 作者:太空宇宙 更新时间:2023-11-04 04:56:27 24 4
gpt4 key购买 nike

我有 2 部词典。

dict1={'Name':'','Age':'','Salary':''}
dict2={'Name':'John','Salary':'25k'}

必需的输出是一个列表,如果键匹配,则匹配键的值将被添加到列表中。如果不匹配,则必须在列表中填充一个空格。例如,年龄在 dict2 中不可用,因此列表中的第二项应该是空格,输出顺序不应改变。

[John, ,25k]

到目前为止,我尝试使用 for 循环来查找匹配的键,但不确定如何为不匹配的值填充空格并保持 dict1 中的顺序。

任何帮助将不胜感激。提前致谢

最佳答案

您可以只使用列表理解来迭代 dict1get 中的键dict2"" 中的相应值作为默认值。

>>> dict1={'Name':'','Age':'','Salary':''}
>>> dict2={'Name':'John','Salary':'25k'}
>>> [dict2.get(key, " ") for key in dict1]
['John', '25k', ' ']

注意:这里使用的是 Python 3.5,因此 dict1 的顺序会被打乱。使用 OrderedDict:

>>> dict1 = collections.OrderedDict([('Name',''),('Age',''),('Salary','')])
>>> [dict2.get(key, " ") for key in dict1]
['John', ' ', '25k']

关于python - 比较python中的2个字典并创建一个包含字典值的列表,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/46936934/

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