Wörterbücher in einer Liste mit Python durchsuchen
Betrachten Sie eine Liste von Wörterbüchern als Beispiel:
dicts = [ {"name": "Tom", "age": 10}, {"name": "Mark", "age": 5}, {"name": "Pam", "age": 7}, ]
Problem: Wie suchen und rufen Sie das Wörterbuch ab, bei dem der Schlüssel „Name“ gleich ist? „Pam“?
Lösung:
Mithilfe eines Generatorausdrucks können Sie die Liste der Wörterbücher durchlaufen und das benötigte herausfiltern:
match = next(item for item in dicts if item["name"] == "Pam") print(match) # {"name": "Pam", "age": 7}
Umgang mit Nichtexistenz:
Wenn es möglich ist, dass der Name Wenn der gesuchte Artikel nicht in der Liste vorhanden ist, können Sie die Funktion next() mit einem Standardargument verwenden:
match = next((item for item in dicts if item["name"] == "Pam"), None) if match: print(match) else: print("No matching dictionary found.")
Alternative Ansätze:
index = next((i for i, item in enumerate(dicts) if item["name"] == "Pam"), None) print(f"Matching dictionary at index {index}")
Das obige ist der detaillierte Inhalt vonWie kann man in einer Python-Wörterbuchliste effizient nach einem bestimmten Wörterbuch suchen?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!