【发布时间】:2016-10-26 17:11:25
【问题描述】:
我将多个字典从 .txt 文件导入到我的 python 文件中,然后我必须在所有字典中搜索一个键('name'),但我的代码只在第一个字典中搜索并相应地给出结果.我想知道是否有一种简单的方法来处理这种情况。立即提供帮助将不胜感激。当前代码和 .txt 文件中的数据如下所示:
elif option == 's':
if 'name' in open('data.txt').read():
sea = input ("Type a menu item name to search for: ")
file = open('data.txt', 'r')
data = json.load(file)
file.close()
for index, line in enumerate(data):
if sea.lower() in line['name'].lower():
print (index, line['name'])
main()
else:
print ('No such item exist')
main()
else:
print ("The list is empty")
main()
字典:
[
{
"fat": 29,
"carbohydrates": 45,
"protein": 25,
"sodium": 1040,
"cholesterol": 75,
"calories": 540,
"name": "Big Mac"
},
{
"fat": 47,
"carbohydrates": 53,
"protein": 33,
"sodium": 1410,
"cholesterol": 100,
"calories": 760,
"name": "Whopper"
},
{
"fat": 80,
"carbohydrates": 50,
"protein": 650,
"calories": 45,
"cholesterol": 50,
"sodium": 50,
"name": "Icecream'"
}
]
【问题讨论】:
-
欢迎来到 StackOverflow。请阅读并遵循帮助文档中的发布指南。 Minimal, complete, verifiable example 适用于此。在您发布代码并准确描述问题之前,我们无法有效地帮助您。最值得注意的是,您发布的代码不足以重现问题。
标签: python dictionary search