在Python中读取JSONfile

2024-10-03 19:28:31 发布

您现在位置:Python中文网/ 问答频道 /正文

我有一个json文件,结构如下:

[ {“ID”:“fjhgj”,“Label”:{“objects”:[{“featureId”:“jhgd”,“schemaId”:“hgkl”,“title”:“Kuh”,“}],“classification”:[]}”,创建人:“xxx_xxx”,“项目名称”:“tiererkenung”}

{“ID”:“jhgh”,“Label”:{“objects”:[{“featureId”:“jhgd”,“schemaId”:“erzl”,“title”:“Kuh”,“}],“classification”:[]}”,创建人::“xxx_xxx”,“项目名称”:“tiererkenung”}

我想读取json文件中每个条目的所有ID和所有SchemaAIDS

我尝试的是:

import json
with open('Tierbilder.json') as f:
data=json.load(f)

data1 =data[0]
print(data1.values)

server_dict = {k:v for d in data for k,v in d.items()}
host_list = server_dict

现在我的问题是,在host_列表中,只保存json文件的最后一行。如何获得另一行,如第一行? 谢谢你的帮助


Tags: 文件idjsondataobjectstitlelabelxxx
1条回答
网友
1楼 · 发布于 2024-10-03 19:28:31
  1. 构造JSON,使其可读且结构清晰
  2. 简单列表理解
  3. data您的文件将被读取
data = [{'ID': 'fjhgj', 
         'Label': {'objects': [{'featureId': 'jhgd','schemaId': 'hgkl','title': 'Kuh'}], 'classifications': []},
         'Created By': 'xxx_xxx','Project Name': 'Tiererkennung'},
         {'ID': 'jhgh', 'Label': {'objects': [{'featureId': 'jhgd','schemaId': 'erzl','title': 'Kuh'}], 'classifications': []},
          'Created By': 'xxx_xxx','Project Name': 'Tiererkennung'}]

projschema = [{"ID":proj["ID"], "schemaId":schema["schemaId"]} 
              for proj in data 
              for schema in proj["Label"]["objects"]]

输出

[{'ID': 'fjhgj', 'schemaId': 'hgkl'}, {'ID': 'jhgh', 'schemaId': 'erzl'}]

相关问题 更多 >