gpt4 book ai didi

python - 验证字符串作为 Python 字典中的键或值存在吗?

转载 作者:行者123 更新时间:2023-11-30 22:33:39 31 4
gpt4 key购买 nike

我正在为 Linux 目录构建一个爬虫/爬虫。本质上,该程序将获取用户输入的文件类型以进行抓取(这就是我的问题所在)

我将可接受的文件扩展名类型存储在带有嵌套列表的字典中,例如:

file_types = {'images': ['png', 'jpg', 'jpeg', 'gif', 'bmp'], 'text': ['txt', 'doc', 'pdf']}

为了给用户提供必须选择的选项,我使用了这个 for 循环:

for k, v in file_types.items():
print(k, v)

以这种格式打印字典:

audio ['mp3', 'mpa', 'wpi', 'wav', 'wpi']

text ['txt', 'doc', 'pdf']

video ['mp4', 'avi', '3g2', '3gp', 'mkv', 'm4v', 'mov', 'mpg', 'wmv', 'flv']

images ['png', 'jpg', 'jpeg', 'gif', 'bmp']

现在如果我这样做:

scrape_for = input("请输入文件类型,或
您想要抓取的扩展名:\n")

如何验证用户输入是否存在于我的字典 file_types 中作为键或值(我说键或值,因此如果用户输入“图像”,我可以使用关键图片)

最佳答案

我首先将扩展列表整理成一个集合,这样您就不必稍后循环遍历它,并且可以进行快速的现场查找:

file_types = {'images': ['png', 'jpg', 'jpeg', 'gif', 'bmp'], 'text': ['txt', 'doc', 'pdf']}
file_extensions = set(sum(file_types.values(), []))

scrape_for = input("Enter the type / extension to scrape: ").lower()
if scrape_for not in file_types and scrape_for not in file_extensions:
print("I don't support this type / extension!")

关于python - 验证字符串作为 Python 字典中的键或值存在吗?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45093218/

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