Listenanalyse, wird hauptsächlich zum dynamischen Erstellen von Listen verwendet
In diesem Artikel geht es hauptsächlich um die Verwendung von Lambda, Map () und Filter () in Kombination mit Listenanalyseanweisungen.
Liste Das Grundlegende Die Syntax des Parsens lautet: [expr for iter_var in iterable]
Der Kern dieser Anweisung ist die for-Schleife, die alle Einträge des iterierbaren Objekts iteriert. Der vorhergehende Ausdruck wird auf jedes Mitglied der Sequenz angewendet und der Endergebniswert ist die vom Ausdruck erzeugte Liste.
Nehmen wir ein Beispiel
Test im Leerlauf:
>>> for i in range(0,8)]
[0,1,2,3,4,5,6,7]
wobei i in der grundlegenden Syntax expr ist. Es ist auch iter_val ; auf andere Weise führen wir eine Operation mit dem darin enthaltenen Wert durch und multiplizieren alle Mitglieder mit 2
>>> >[0, 2, 4, 6, 8, 10, 12, 14]
Dies ist eine Listenanalyse, die vollständig gemäß der grundlegenden Syntax geschrieben wurde
2. Beurteilungsbedingungen nach der Recycling-Anweisung hinzufügen
Wir können auch einige Anweisungen danach erweitern und hinzufügen, um beispielsweise die Liste zu filtern; wir brauchen nur die Zahl in diesem Wert, die durch 2 teilbar ist
>>> [i für i in range(1,8) if i%2 == 0]
[ 2 , 4, 6]
Diese Anweisung ähnelt der Verwendung von Filter, daher können wir auch die integrierte Filterfunktion von Python verwenden, um denselben Wert zu erreichen
>> ;> (lambda x:x%2==0, range(1,8))
>>> für i in l: i
4
6
Aber ich fand nein, es gibt einige Unterschiede, weil ich die Liste nicht direkt ausgedruckt habe. Warum? Da der Rückgabewert des Filters ein Generator ist, ist der Generator
und kann den nächsten Wert nur durch Iteration
3 ermitteln wird verwendet, um die gleichen Ergebnisse wie beim Listenparsen zu erzielen
>>> map(lambda x: x*2, range(1,8))
Die Verwendung kann den gleichen Effekt erzielen wie [x * 2 für x im Bereich (1,8)], letzteres ist jedoch effizienter als map()
4. Matrix generieren
Wenn Sie eine Matrix mit 3 Zeilen und 5 Spalten benötigen, ist es ganz einfach:
(2, 0), (2, 1), (2, 2), (2, 3), (2, 4)]
Weitere Informationen zum Parsen von Referenzlisten finden Sie auch in PEP 202
Das obige ist der detaillierte Inhalt vonPython-Listenanalyse. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!