这是对这个问题的跟进。问题
这个问题也很相似,但不能解决我的问题Question2
我正在尝试解析嵌套的 json 以获取检查特定位置有多少个孩子,我正在尝试检查是否"children:" = None并增加计数器以检查我需要向下多少级才能获得最低的孩子,或者更有效解决方案是:
我需要将所有子值放入一个列表中,然后继续直到"children:" = None.
Json 对象可以增加子级的数量,因此我们可以有多个级别的子级,如果我想嵌套列表并获取值,这会变得混乱,我怎么能动态地做到这一点?
{
'locationId': 'location1',
'name': 'Name',
'type': 'Ward',
'patientId': None,
'children': [{
'locationId': 'Child_location2',
'name': 'Name',
'type': 'Bed',
'patientId': None,
'children': [{
'locationId': 'Child_Child_location3',
'name': 'Name',
'type': 'HospitalGroup',
'patientId': None,
'children': None
}]
}, {
'locationId': 'location4',
'name': 'Name',
'type': 'Hospital',
'patientId': None,
'children': None
}, {
'locationId': 'location5',
'name': 'Name',
'type': 'Bed',
'patientId': None,
'children': None
}, {
'locationId': 'location6',
'name': 'Name',
'type': 'Bed',
'patientId': None,
'children': None
}, {
'locationId': 'location27',
'name': 'Name',
'type': 'Bed',
'patientId': None,
'children': None
}]
}
我试图做这样的事情
import requests
def Get_Child(URL, Name):
headers = {
'accept': 'text/plain',
}
response = requests.get(
URL + Name,
headers=headers)
json_data = response.json()
print (json_data)
list = []
for locationId in json_data['locationId']:
list.append(locationId)
for children in locationId['children']:
list.append(children)
但这给了我以下错误,
for children in locationId['locationId']: TypeError: string indices must be integers
潇湘沐
慕运维8079593
相关分类