Przeprosiny z góry za to, że takie pytanie dla początkujących. Właśnie zaczynam pisać Pythona i mam pewne zamieszanie wokół pojawiania się wartości z zagnieżdżonych słowników/list, więc doceniam każdą pomoc!Python zagnieżdżonych list/słowników i wartości popping
mam ten przykładowy danych json:
{ "scans": [
{ "status": "completed", "starttime": "20150803T000000", "id":533},
{ "status": "completed", "starttime": "20150803T000000", "id":539}
] }
chciałbym pop „identyfikator” z klucza „skanów”.
def listscans():
response = requests.get(scansurl + "scans", headers=headers, verify=False)
json_data = json.loads(response.text)
print json.dumps(json_data['scans']['id'], indent=2)
wydaje się działać, ponieważ zagnieżdżone klucze/wartości znajdują się na liście. tj.
>>> print json.dumps(json_data['scans']['id'])
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
TypeError: list indices must be integers, not str
Czy ktoś może wskazać mi właściwy kierunek, aby to zadziałało? moim długoterminowym celem jest stworzenie pętli for, która umieszcza wszystkie identyfikatory w innym słowniku lub liście, której można użyć do innej funkcji.
z Twojego ostatniego komentarza wydaje się, że masz już całkiem niezłe pojęcie o tym, co należy zrobić. Dlaczego nie spróbować go zakodować i pokazać nam swoją próbę? – goncalopp
Uznałem, że nie rozwalę tego wątku z milionem nieudanych przykładów tego, co starałem się zachować zwięzłość dla przyszłych czytelników, którzy mają podobny problem. – dobbs