Filtern in JSON Datei mit leeren Feldern
Verfasst: Donnerstag 30. Juli 2020, 11:42
Hallo,
ich möchte Einträge aus einer JSON Datei filtern, aber leider habe ich dabei Probleme.
So sieht ein Ausschnitt aus meiner "Beispiel" JSON Datei aus:
Ich möchte nun alle Geburtstage ab 1990 und später rausfiltern und dabei die vor 1990 und die Einträge, deren Felder am Geburtstag leer sind, außen vor lassen.
Mein erster Versuch sah so aus:
Dabei habe ich aber diese Fehlermeldung bekommen: TypeError: 'NoneType' object is not subscriptable. Also habe ich versucht None zu ersetzen.
Hier bekomme ich aber eine leere Liste zurück. Ich vermute, dass es etwas mit meinem Versuch zu tun hat, None zu ersetzen. Über Hilfestellungen würde ich mich freuen!
ich möchte Einträge aus einer JSON Datei filtern, aber leider habe ich dabei Probleme.
So sieht ein Ausschnitt aus meiner "Beispiel" JSON Datei aus:
Code: Alles auswählen
[{
'Name': 'Otto',
'Birthday': '1990-02-01'
},
{
'Name': 'Susanne',
'Birthday': None
}]
Mein erster Versuch sah so aus:
Code: Alles auswählen
import json
with open("Beispiel.json", mode="r", encoding="utf8") as file:
people = json.load(file)
birth = []
for entry in people:
if int(entry['Birthday'][0:3]) >= 1990:
birth.append(entry)
Code: Alles auswählen
birth = []
for entry in people:
if entry['Birthday'] == None:
entry['Birthday'] = 0
elif int(entry['Birthday][0:3]) >= 1990:
birth.append(entry)
else:
continue