List Comprehensions sind eine elegante und effiziente Möglichkeit, um Listen in Python zu erstellen. Sie ermöglichen es, Listen auf kompakte und lesbare Weise zu generieren und zu transformieren. List Comprehensions sind besonders nützlich, um aus bestehenden Listen neue Listen zu erstellen, indem man Elemente filtert, transformiert oder kombiniert.
Die Syntax für eine List Comprehensions ist:
[expression for item in iterable if condition]
Dabei bedeutet:
expression
: Der Ausdruck, der auf jedes Element angewendet wird.item
: Ein Element aus dem iterierbaren Objekt (z.B. eine Liste).iterable
: Ein iterierbares Objekt (z.B. eine Liste, ein Tuple oder eine Zeichenkette).if condition
: (Optional) Eine Bedingung, die jedes Element erfüllen muss, um in die neue Liste aufgenommen zu werden.List Comprehensions sind oft schneller und effizienter als herkömmliche Schleifen, da sie in Python auf optimierte Weise implementiert sind. Sie reduzieren die Anzahl der Zeilen Code und machen den Code oft lesbarer.
# Eine mathematische Operation auf alle Elemente in einer Liste anwenden:
zahlen = [1, 2, 3, 4, 5]
quadrate = [x**2 for x in zahlen]
print(quadrate)
# Ausgabe: [1, 4, 9, 16, 25]
#------------------------------------------------
# Filtern von Elementen
zahlen = [1, 2, 3, 4, 5, 6]
gerade_zahlen = [x for x in zahlen if x % 2 == 0]
print(gerade_zahlen)
# Ausgabe: [2, 4, 6]
#------------------------------------------------
# Transformation und Filtern kombiniert
zahlen = [1, 2, 3, 4, 5, 6]
quadrate_von_geraden_zahlen = [x**2 for x in zahlen if x % 2 == 0]
print(quadrate_von_geraden_zahlen)
# Ausgabe: [4, 16, 36]
Was ist die Ausgabe?
Zahlen = [4, 2, 5, 1, 3, 7, 9, 11, 15, 19, 22, 42]
Gefiltert = [x for x in Zahlen if x < 10]
print(Gefiltert[-1])