有一个json文件,
{
"IGCSE":[
{
"rolename": "igcsesubject1",
"roleid": 764106550863462431
},
{
"rolename": "igcsesubject2",
"roleid": 764106550863462431
}
],
"AS":[
{
"rolename": "assubject1",
"roleid": 854789476987546
},
{
"rolename": "assubject2",
"roleid": 854789476987546
}
],
"A2":[
{
"rolename": "a2subject1",
"roleid": 854789476987856
},
{
"rolename": "a2subject2",
"roleid": 854789476987856
}
]
}
我想获取键[igcse,as,a2 ..],然后获取特定键下的角色名称和角色ID。我该怎么做? 以下是我以前没有按键时如何使用它的python代码。
with open(fileloc) as f:
data = json.load(f)
for s in range(len(data)):
d1 = data[s]
rname = d1["rolename"]
rid = d1["roleid"]
任何帮助将不胜感激:)
答案 0 :(得分:0)
首先,您可以拥有一个密钥列表,在这些列表中,您将获得它们:
l = ['A1','A2']
然后像这样迭代:
for x in data:
if x in l:
for y in range(len(data[x])):
print(j[x][y]['rolename'])
print(j[x][y]['roleid'])
答案 1 :(得分:0)
您可以使用它来获得密钥:
with open(fileloc) as f:
data = json.load(f)
for s in data:
d1 = data[s]
rname = d1["rolename"]
rid = d1["roleid"]
答案 2 :(得分:0)
以下内容将满足您的需求:
with open(file) as f:
json_dict = json.load(f)
for key in json_dict:
value_list = json_dict[key]
for item in value_list:
rname = item["rolename"]
rid = item["roleid"]
如果您需要过滤JSON中的特定键,则可以获取要获取的键列表,并在遍历这些键时对这些键进行过滤(类似于上述Wasif Hasan的建议)。