给定一个字符串列表,如果任何值等于列表中的值,我想将字典的值添加到新字典中[重复]

Posted

技术标签:

【中文标题】给定一个字符串列表,如果任何值等于列表中的值,我想将字典的值添加到新字典中[重复]【英文标题】:Given a list of strings, I want to add the values of a dictionary to a new dictionary if any of the values are equal to the values in the list [duplicate] 【发布时间】:2019-06-03 15:15:43 【问题描述】:

例如:

my_dict = 1: "apple", 2: "pear", 3: "orange", 4: "apple", 5: "grape", 6: "mango", 7: "mango", 8: "pear", 9: "lemon"
fruit_list = ["apple", "mango", "lemon"]

我想通过 my_dict 进行解析,如果 my_dict 中的值等于 fruit_list 中的任何一个值,则将该键和值添加到新字典中,因此输出字典为:

1: "apple", 4:"apple", 6:"mango", 7:"mango", 9:"lemon"

我已经厌倦了使用 enumerate 函数,但似乎没有得到输出。

谢谢!

【问题讨论】:

【参考方案1】:

你可以做一个字典理解:

new_dict = k: v for k, v in my_dict.items() if v in fruit_list

【讨论】:

以上是关于给定一个字符串列表,如果任何值等于列表中的值,我想将字典的值添加到新字典中[重复]的主要内容,如果未能解决你的问题,请参考以下文章

将数据框中的值列表附加到新列[重复]

确定变量是不是等于值“列表”中的值的最简洁方法

检查字符串的第一部分是否在表中的值列表中

Django 1.9 在列表中查找属性等于某个值的对象

比较python中的列表值

在列表中查找小于或等于键的值