List Comprehensions: List Comprehensions ist eine sehr einfache, aber am häufigsten verwendete Funktion in Python.
Wie Sie am Namen erkennen können, sollte die Listengenerierung einen Listentyp zurückgeben, der die erforderliche Liste auf einfachste und verständlichste Weise generieren kann.
Beispiel: Ich benötige eine Liste, die aus den Quadraten aller Zahlen in der Liste 1-100 besteht. Zu diesem Zeitpunkt können Sie eine for-Schleife verwenden:
Python-Code
a = [] for value in range(1, 101): a.append(value * value) print(a)
Das zu diesem Zeitpunkt erhaltene a ist ein Array, das aus dem Quadrat jeder Zahl in 1-100 besteht. Diese Methode ist einfach, aber die Verwendung der Listengenerierung ist noch einfacher.
Python-Code
a = [value * value for value in range(1,101)] print(a)
Das erhaltene a ist genau das gleiche wie das a in der vorherigen Methode.
In a = [Wert * Wert für Wert im Bereich (1,101)] ist Wert * Wert ein Ausdruck. Der Zahlenwert stammt aus der for-Schleife hinter dem Ausdruck. Jedes Mal, wenn die for-Schleife eine Schleife durchführt Geben Sie den Ausdruck einmal ein und speichern Sie schließlich die Berechnungsergebnisse jeder Schleife in der for-Schleife in einer Liste. Weisen Sie es schließlich a zu.
Bei der Listengenerierung können auch mehrere Schleifen verwendet werden. Zum Beispiel:
Python-Code
a = [x * y for x in range(1,3) for y in range(3,5)] print(a)
Das generierte Ergebnis ist:
Terminalcode
[3, 4, 6, 8]
range(1,3) ist [1, 2], range(3,5) ist [3,4], x kommt aus range(1,3), y kommt aus range (3,5 )
Das Ergebnis ist: 1*3, 1*4, 2*3, 2*4
Darüber hinaus können Sie der Listengenerierung auch bedingte Urteile hinzufügen:
Python-Code
a = [value * value for value in range(1, 11) if value % 2 == 0] print(a)
#Das Ergebnis ist:
[4, 16, 36, 64, 100]
Bedingte Auswahl hinzufügen Wert nach der for-Schleife. In diesem Beispiel soll das Quadrat einer geraden Zahl von 1 bis 10 berechnet werden