List, Set, Dictionary Comprehensions in Python

Foto von Kara Eads auf Unsplash

Verstehen in Python:

Die Comprehension besteht aus einem einzelnen Ausdruck, gefolgt von mindestens einer for-Klausel und null oder mehr for– oder if-Klauseln.

Es gibt drei Comprehensions in Python.

Typen von Comprehensions in Python(Bildquelle: Autor)

Listen-Comprehensions:

Listen-Comprehensions bieten eine prägnante Möglichkeit, Listen zu erstellen. Übliche Anwendungen sind die Erstellung neuer Listen, bei denen jedes Element das Ergebnis einiger Operationen ist, die auf jedes Mitglied einer anderen Sequenz oder Iterablen angewandt werden, oder die Erstellung einer Teilfolge von Elementen, die eine bestimmte Bedingung erfüllen. – python docs

Syntax:

Der Ausdruck kann ein beliebiger Ausdruck, komplexe Ausdrücke, Tupel, verschachtelte Funktionen oder ein anderes Listenverständnis sein.

Dies ist äquivalent zu

for item in iterable:
if conditional:
expression

Rückgabetyp:

List

Listenverständnis verwenden:

Ein Listenverständnis besteht aus Klammern, die einen Ausdruck enthalten, gefolgt von einer for-Klausel, dann null oder mehr for– oder if-Klauseln. Das Ergebnis ist eine neue Liste, die sich aus der Auswertung des Ausdrucks im Kontext der for– und if-Klauseln ergibt, die ihm folgen.

Listenverständnis erklärt(Bildquelle: Autor)

Listenverständnis vs. for-Schleife.

Durch die Verwendung von List Comprehension ist es prägnanter und lesbarer im Vergleich zu for loop.

Finden von Zahlenquadraten mit List Comprehension vs. for-Schleife:

for-Schleife vs. List Comprehension

List Comprehension vs. Filter.

Returnt einen Iterator aus den Elementen von iterable, für die die Funktion true zurückgibt. iterable kann entweder eine Sequenz, ein Container, der Iteration unterstützt, oder ein Iterator sein

Gerade Zahlen finden mit List Comprehension vs filter():

List Comprehension vs filter()

3.List Comprehension vs map.

map:

Return einen Iterator, der eine Funktion auf jedes Element von iterable anwendet und die Ergebnisse liefert.

Finden von Zahlenquadraten mit List Comprehension vs map():

List Comprehension vs map()

Schachtelschleifen in List Comprehension.

List Comprehension kann eine oder mehrere for-Klauseln enthalten.

Beispiel 1: Flatten a list using List Comprehension with two ‚for‘ clause:

Flatten a list using List comprehension

5.Multiple if condition in List Comprehension.

List comprehension can contain zero or more if clause.

Beispiel: Finden von Zahlen, die durch 2 und 3 teilbar sind.

Listenverständnis mit zwei if-Klauseln

Der Ausdruck kann in einem Listenverständnis ein Tupel sein.

Wir können den Ausdruck als Tupel in einem Listenverständnis angeben. Er sollte in Klammern geschrieben werden. Andernfalls wird ein Fehler ausgegeben. Das Ergebnis ist eine Liste von Tupeln.

Beispiel 1: Erstellen einer Liste von Tupeln unter Verwendung von List Comprehension mit zwei ‚for‘-Klauseln:

Liste von Tupeln

Wenn der Ausdruck ein Tupel ist und nicht in Klammern steht, wird ein SyntaxFehler ausgegeben.

Der Ausdruck sollte in Klammern gesetzt werden, wenn es sich um ein Tupel handelt.

Beispiel 2: Verwendung der Funktion zip() in List Comprehension:

zip() in List Comprehension

List Comprehension kann verwendet werden, um eine Methode für jedes Element aufzurufen.

Beispiel 1: Aufruf der Methode strip() für jedes Element der Liste. Sie wird verwendet, um die Leerzeichen zu entfernen.

Aufruf der strip()-Methode für jedes Element

Beispiel 2: Aufruf der upper()-Methode für jedes Element in der Liste.

Aufruf der upper()-Methode für jedes Element

Listenverständnis kann komplexe Ausdrücke und verschachtelte Funktionen enthalten.

Beispiel 1: Im folgenden Beispiel verwenden wir im Ausdruck die strip-Methode und die int-Funktion.

Beispiel 2: Im folgenden Beispiel verwenden wir im Ausdruck die abs()- und str()-Funktion.

Verschachtelte Listenauffassung.

Der Ausdruck in einer Listenauffassung kann auch eine andere Listenauffassung enthalten.

Beispiel: Das erste Listenverständnis, das als Ausdruck angegeben wird, gibt eine Liste mit geraden Zahlen von 0 bis 10 zurück. Das verschachtelte Listenverständnis wird diesen Ausdruck (Liste der geraden Zahlen von 0 bis 10) dreimal zurückgeben (Bereich(3)).

Verschachteltes Listenverständnis

Schreibe einen Kommentar

Deine E-Mail-Adresse wird nicht veröffentlicht.