您好,我尝试做一个应用程序,但被阻止了:我不怎么从字典中获取信息到字典中
我知道如何获得它,如何阅读它,但是我不知道如何阅读每个动词!
如果您有任何信息可以帮助我,我将不胜感激!
list = {
{
"FIELD1": "\"A\"",
"FIELD2": "\"B\"",
"FIELD3": "\"C\"",
"FIELD4": "\"D\"",
"FIELD5": ""
},
{
"FIELD1": "\"Base verbale (to...)\"",
"FIELD2": "\"Preterit\"",
"FIELD3": "\"Participe passe\"",
"FIELD4": "\"Traduction\"",
"FIELD5": ""
},
{
"FIELD1": "\"arise\"",
"FIELD2": "\"arose\"",
"FIELD3": "\"arisen\"",
"FIELD4": "\"survenir\"",
"FIELD5": ""
},
}
我做了什么:
import json
from verbes import *
file = "verbes.py"
my_file = open(file, "r").read()
keys = list.keys()
print(keys)
first_object = list["FIELD1"]
print(first_object)
再次感谢您的帮助!
答案 0 :(得分:1)
首先,修复您的文字列表,请勿使用“ list”作为变量名,因为它是python中的保留关键字,声明列表的括号应为[],而不是{},像这样: verbes.py:
verbe_list = [
{
"FIELD1": "\"A\"",
"FIELD2": "\"B\"",
"FIELD3": "\"C\"",
"FIELD4": "\"D\"",
"FIELD5": ""
}...
]
如果要在另一个python脚本中使用verbes.py列表,则可以按以下方式导入。嵌套的for循环将在verbe_list中打印所有键和值。
main.py:
from verbes import verbe_list
for item in verbe_list:
for k, v in item.items():
print(k, v)
更新: 这将为您提供“ FIELD1”的所有值。
first_object_of_all_dict = [item['FIELD1'] for item in verbe_list]
结果:
['"A"', '"Base verbale (to...)"', '"arise"']
如果要从verbe_list的第一个字典中获取“ FIELD1”的值:
first_object_of_first_dict = verbe_list[0]['FIELD1']
结果:
"A"
答案 1 :(得分:0)
与其保存.py
相同的verbes.json
与
[
{
"FIELD1": "\"A\"",
"FIELD2": "\"B\"",
"FIELD3": "\"C\"",
}...
]
然后使用json
import json
list = json.load(open("verbes.json"))
for d in list:
print(d.keys())
答案 2 :(得分:0)
首先,我相信您可能会混淆列表和字典。您真正想在这里处理的是一个列表:[] ,该列表由字典:{} 组成。在这里,我展示了您可能做的事情。由于list
关键字已经在python中使用,因此您实际上不应该使用它定义自己的变量。
verbes_list = [
{
"FIELD1": "\"A\"",
"FIELD2": "\"B\"",
"FIELD3": "\"C\"",
"FIELD4": "\"D\"",
"FIELD5": ""
},
{
"FIELD1": "\"Base verbale (to...)\"",
"FIELD2": "\"Preterit\"",
"FIELD3": "\"Participe passe\"",
"FIELD4": "\"Traduction\"",
"FIELD5": ""
},
{
"FIELD1": "\"arise\"",
"FIELD2": "\"arose\"",
"FIELD3": "\"arisen\"",
"FIELD4": "\"survenir\"",
"FIELD5": ""
}
]
此外,查看第二段代码,您实际上不需要再次开始读取整个文件,而是可以导入想要读取的特定变量。仅分析您的原始代码,我收集到您想打印字典列表中的键和对象,因此可以通过在列表中运行一个for循环来获取这3个大块来实现。接下来,在最终打印之前,运行另一个for循环以获取这3个块中的每个块的键和对象。
import json
from verbes import verbes_list
for chunk in verbes_list:
for key, object in chunk.items():
print(key, object)
希望这会有所帮助:)