Dictionaries und Listen sind fundamentale Datenstrukturen in Python, jede mit ihren eigenen Vorteilen. Die Konvertierung zwischen ihnen ist eine häufige Aufgabe, und dieser Artikel untersucht effiziente Methoden zur Umwandlung eines Python-Dictionaries in eine Liste, zugeschnitten auf verschiedene Bedürfnisse.
Inhaltsverzeichnis
- Schlüssel in eine Liste extrahieren
- Werte in eine Liste extrahieren
- In eine Liste von Schlüssel-Wert-Paaren konvertieren
- List Comprehension für Flexibilität verwenden
Schlüssel in eine Liste extrahieren
Die Methode keys()
bietet eine einfache Möglichkeit, eine Liste von Dictionaryschlüsseln zu erhalten. Sie gibt ein View-Objekt zurück, das effizient mit list()
in eine Liste umgewandelt wird.
my_dict = {"a": 1, "b": 2, "c": 3}
keys_list = list(my_dict.keys())
print(keys_list) # Ausgabe: ['a', 'b', 'c']
Diese Methode ist effizient und bewahrt die Schlüsselreihenfolge (garantiert ab Python 3.7).
Werte in eine Liste extrahieren
Ähnlich extrahiert die Methode values()
Dictionary-Werte, die einfach in eine Liste umgewandelt werden können.
my_dict = {"a": 1, "b": 2, "c": 3}
values_list = list(my_dict.values())
print(values_list) # Ausgabe: [1, 2, 3]
Die resultierende Liste spiegelt die Reihenfolge der Schlüssel wider (ab Python 3.7 erhalten).
In eine Liste von Schlüssel-Wert-Paaren konvertieren
Um sowohl Schlüssel als auch Werte beizubehalten, verwenden Sie die Methode items()
. Diese gibt Schlüssel-Wert-Paare als Tupel zurück, die leicht in eine Liste umgewandelt werden können.
my_dict = {"a": 1, "b": 2, "c": 3}
items_list = list(my_dict.items())
print(items_list) # Ausgabe: [('a', 1), ('b', 2), ('c', 3)]
Diese strukturierte Darstellung ist ideal für die gleichzeitige Verarbeitung von Schlüsseln und Werten.
List Comprehension für Flexibilität verwenden
List Comprehension bietet einen prägnanten und leistungsstarken Ansatz, der besonders für kundenspezifische Transformationen nützlich ist.
my_dict = {"a": 1, "b": 2, "c": 3}
#Beispiel 1: Liste von Schlüssel-Wert-Paaren mit modifizierten Werten
modified_items = [(k, v*2) for k, v in my_dict.items()]
print(modified_items) #Ausgabe: [('a', 2), ('b', 4), ('c', 6)]
#Beispiel 2: Liste von Schlüsseln, bei denen die Werte größer als 1 sind
filtered_keys = [k for k, v in my_dict.items() if v > 1]
print(filtered_keys) #Ausgabe: ['b', 'c']
List Comprehension bietet Flexibilität, um die Konvertierung an spezifische Verarbeitungsanforderungen anzupassen.
Python bietet mehrere effiziente Methoden zur Umwandlung von Dictionaries in Listen, die eine nahtlose Datenstrukturmanipulation ermöglichen. Die Auswahl des besten Ansatzes hängt vom gewünschten Ergebnis und der Komplexität der Transformation ab.