Entfernen von Elementen, die auf verschachtelten Wörterbuchwerten basierenPython

Python-Programme
Anonymous
 Entfernen von Elementen, die auf verschachtelten Wörterbuchwerten basieren

Post by Anonymous »

Ich habe eine komplexe verschachtelte Wörterbuchstruktur und muss Elemente basierend auf den Werten in einem verschachtelten Wörterbuch entfernen. Mein Wörterbuch sieht so aus: < /p>

Code: Select all

my_dict = {
'item1': {'name': 'Apple', 'price': 1.0, 'category': {'id': 1, 'name': 'Fruit'}},
'item2': {'name': 'Banana', 'price': 0.5, 'category': {'id': 1, 'name': 'Fruit'}},
'item3': {'name': 'Carrot', 'price': 0.75, 'category': {'id': 2, 'name': 'Vegetable'}},
'item4': {'name': 'Broccoli', 'price': 1.5, 'category': {'id': 2, 'name': 'Vegetable'}}
}
< /code>
Ich möchte dieses Wörterbuch filtern, um nur Elemente der Kategorie "Frucht" enthalten. Ich habe den folgenden Code ausprobiert: < /p>
new_dict = {}
for key, value in my_dict.items():
if value['category']['name'] == 'Fruit':
new_dict[key] = value
print(new_dict)
Dies funktioniert, aber ich frage mich, ob es eine prägnantere oder pythonische Möglichkeit gibt, dies zu erreichen, möglicherweise mit dem Wörterbuchverständnis oder einer Filterfunktion wie Filter () .

Quick Reply

Change Text Case: 
   
  • Similar Topics
    Replies
    Views
    Last post