10 Beispiele zum Verstehen von Python-Masterlisten

Inhalt

Dieser Beitrag wurde im Rahmen der Data Science Blogathon

Einführung

In diesem Beitrag, wir werden die Listen nach Python-Verständnis studieren und wie man sie verwendet. Die Themen, die wir in diesem Beitrag besprechen werden, sind die folgenden:

  • Was ist der Unterschied zwischen Listenverständnis und For-Schleife in Python??
  • Syntax von Listenverständnissen in Python
  • Unterschied zwischen Lambda-Funktionen und Listenverständnissen
  • Bedingungen im Listenverständnis
  • Verschachtelte Schleifen in der Liste der Verständnisse in Python
  • Wichtige Punkte zum Verständnis von Listen
  • Weitere Beispiele für das Listenverständnis

Ein nicht einfach Meme - Imgflip |  Python-Verständnisliste

Bildquelle: Google Bilder

Was ist der Unterschied zwischen Listenverständnis und for-Schleife in Python??

Angenommen, wir sehnen uns danach, die Buchstaben des Wortes zu trennen „Analyse“ und füge die Buchstaben als Elemente aus einer Liste hinzu. Die Hauptsache, die mir in den Sinn kommt, wäre die Verwendung von for loop.

Beispiel 1: Verwenden der For-Schleife, um durch eine Zeichenfolge zu iterieren

Separate_Buchstaben = []
for letter in 'analytics':
separate_letters.append(Buchstabe)
drucken(getrennte_buchstaben)

Produktion:

[ 'a', 'n', 'a', 'l', 'y', 't', 'i', 'c', 's' ]

Erklärung des Codes:

In diesem Beispiel, Wir werden die Zeichenfolge basierend auf den Zeichen aufteilen und alle diese Zeichen in einer neuen Liste speichern.

Trotz dieses, Python hat eine bessere Möglichkeit, dieses Problem mit List Comprehension zu lösen. Listenverständnis ist eine großartige Möglichkeit, Listen basierend auf bestehenden Listen zu erstellen und zu erstellen..

Mal sehen, wie das obige Programm mit Verständnislisten geschrieben werden kann.

Beispiel 2: Verwenden von Listenverständnis zum Durchlaufen einer Zeichenfolge

Separate_Buchstaben = [ letter for letter in 'analytics' ]
drucken( getrennte_buchstaben)

Produktion:

[ 'a', 'n', 'a', 'l', 'y', 't', 'i', 'c', 's' ]

Erklärung des Codes:

Im obigen Beispiel, den Buchstaben_getrennten Variablen wird eine neue Liste zugewiesen, y la lista contiene las cosas de la cadena iterable ‚Analyse‘. Beenden, um den Ausgang zu erhalten, wir nennen die Drucken() Python-Funktion.

Listenverständnissyntax

[Ausdruck für Element in der Liste]

Jetzt, Wir können erkennen, wo Listen verwendet werden, indem wir verstehen.

Wenn er merkte, „Analyse“ könnte eine Schnur sein, keine Liste. Dies sind oft die leicht verständlichen Listen. Sie können erkennen, wann Sie eine Zeichenfolge oder ein Tupel erhalten und diese als Liste bearbeiten.

Sie können dies mit Schleifen testen. Trotz dieses, nicht alle Schleifen können als Verständnisliste umgeschrieben werden. Aber wie Sie lernen und sich mit Verständnislisten vertraut machen, Sie werden am Ende immer mehr Schleifen durch diese ausgefallene Syntax ersetzen.

Liste der Verständnisse vs. Lambda-Funktionen

Um mit Listen zu arbeiten oder Operationen auszuführen, Verständnislisten sind nicht der einzige Weg, aber verschiedene integrierte Tools und Lambda-Funktionen können Listen in weniger Codezeilen erstellen und ändern.

Beispiel 3: Verwenden von Lambda-Funktionen in List

Buchstaben = Liste(Karte(Lambda und: Ja, 'analytics'))
drucken(Briefe)

Produktion:

[ 'a', 'n', 'a', 'l', 'y', 't', 'i', 'c', 's' ]

Erklärung des Codes:

In diesem Code, Wir werden die Zeichen mithilfe von Lambda-Funktionen von der Zeichenfolge trennen.

Trotz dieses, allgemein, Verständnislisten sind für Menschen lesbarer als Lambda-Funktionen. Es ist leichter zu verstehen, was der Programmierer mit der Verwendung von Verständnislisten erreichen wollte.

Bedingungen beim Verstehen von Listen

Umfassende Listen können bedingte Anweisungen verwenden, um vorhandene Listen zu ändern (oder andere Tupel). Wir werden eine Liste erstellen, die mathematische Operatoren verwendet, Ganzzahlen und Bereich ().

Beispiel 4: Verwenden Sie if mit Listenverständnis

Even_list = [ i für i in Reichweite(10) wenn ich % 2 == 0]
drucken(Even_list)

Produktion:

[0, 2, 4, 6, 8]

Erklärung des Codes:

Die Liste, Even_list, wird ergänzt mit Dingen im Bereich von 0 ein 9 wenn der Wert des Elements durch . teilbar ist 2.

Beispiel 5: verschachtelt ja mit Listenverständnis

gefilterte_liste = [ x für x im Bereich(50) wenn x % 2 == 0 wenn x % 5 == 0]
drucken(gefilterte_liste)

Produktion:

[0, 10, 20, 30, 40]

Erklärung des Codes:

Hier, Listenverständnisprüfungen:

Ist x teilbar durch 2 oder nicht?

Ist x teilbar durch 5 oder nicht?

Wenn x beide Bedingungen erfüllt, x wird zu gefilterter_liste hinzugefügt.

Beispiel 6: Wenn … sonst mit Listenverständnis

Liste = ["sogar" wenn y%2==0 sonst "seltsam" für y im Bereich(5)]
drucken(aufführen)

Produktion:

['even', 'odd', 'even', 'odd', 'even']

Erklärung des Codes:

Hier, Wenn Sie die Liste verstehen, werden die fünf Zahlen der 0 al 4. Wenn y durch teilbar ist 2, par wird zur obj-Liste hinzugefügt. Wenn dies nicht der Fall ist, ungerade wird hinzugefügt.

Verschachtelte Schleifen im Listenverständnis

Angenommen, wir möchten die Transponierung eines Arrays berechnen, das eine verschachtelte for-Schleife benötigt. Sehen wir uns zuerst an, wie es mit der normalen for-Schleife gemacht wird.

Beispiel 7: Matrixtransponierung mit verschachtelten Schleifen finden

transposed_matrix = []
Matrix = [[1, 2, 3, 4], [4, 5, 6, 8]]
für mich in Reichweite(len(Matrix[0])):
        transposed_row = []
        für Zeile in Matrix:
              transposed_row.append(Reihe[ich])
        transposed_matrix.append(transposed_row)
drucken(transposed_matrix)

Produktion:

[[1, 4], [2, 5], [3, 6], [4, 8]]

Erklärung des Codes:

Der obige Code verwendet zwei for-Schleifen, um die Transponierte der Matrix zu finden.

Zur selben Zeit, wir können verschachtelte Iterationen innerhalb einer Verständnisliste durchführen. In diesem Abschnitt, Lassen Sie uns die Transposition einer Matrix mithilfe einer verschachtelten Schleife in einer Verständnisliste finden.

Beispiel 8: Finden der Transposition einer Matrix durch Listenverständnis

Matrix = [[1, 2], [3,4], [5,6], [7,8]]
transpose_matrix = [[Reihe[ich] für Zeile in Matrix] für mich in Reichweite(2)]
drucken (transpose_matrix)

Produktion:

[[1, 3, 5, 7], [2, 4, 6, 8]]

Erklärung des Codes:

Im obigen Programm, tenemos una matriz Variable Was stimmt damit nicht 4 Zeilen und ein paar Spalten. Wir müssen die Transponierte der Matrix finden. Dafür, wir verwenden Listenverständnis.

Wichtige Punkte zum Verständnis von Listen

Die wichtigsten Punkte, die beim Arbeiten mit dem Listenverständnis zu beachten sind, sind wie folgt:

  • Listenverständnis ist a sublimieren Camino zu Gründen und bauen Listen mit Hilfe bestehender Listen.
  • Im Vergleich zu normalen Loops und Funktionen, Listenverständnis Das ist normal kompakter und schneller Listen erstellen.
  • Trotz dieses, wir sollten immer Vermeiden Sie es, sehr lange, umfassende Listen in einer Zeile zu schreiben. bestätigen dieser Code ist einfach zu verwenden.
  • Erinnern, jede Verständnisliste es ist in for-Schleife umgeschrieben, aber alle for-Schleifen können nicht umgeschrieben werden innerhalb mehr oder weniger Listenverständnis.

Weitere Beispiele für das Listenverständnis

Sehen wir uns einige weitere Beispiele zum Listenverständnis an, damit Sie das Listenverständnis in Python besser verstehen.

Beispiel 9: Hallar los ítems en una lista en la que los ítems terminan con la letra ‚B‘ und die Länge dieses Elements ist größer als 2

Namen = ['Ch','Dh','Eh','cb','Tb','Td','Chb','Tdb']
final_names = [Name für Name in Namen, wenn name.lower().endet mit('b') und len(Name) > 2]
final_names

Produktion:

['Chb', 'Tdb']

Erklärung des Codes:

Im obigen Code, wir verwenden Listenverständnis mit einigen damit verbundenen Bedingungen. Die an den Bedingungen beteiligten Funktionen sind wie folgt:

  • Name. unten.endetmit (‚B‘): Esta función filtra todas las cadenas de la lista que terminan con las letras ‚B‘ Ö ‚B‘.
  • len (Name): Diese Funktion findet die Länge aller Elemente in einer angegebenen Liste.

Beispiel 10: invertieren Sie jeden String in ein Tupel

# Kehren Sie jedes Element in einem angegebenen Tupel um
Liste = [Schnur[::-1] für String in ('Hallo', 'Analytics', 'Vidhya')]
# Liste anzeigen
drucken(Aufführen)

Produktion:

[ 'olleH', 'scitylanA', 'ayhdiV' ]

Erklärung des Codes:

Im obigen Code, Wir verwenden das Konzept des Schneidens in eine Kette, deshalb, bei Verwendung von str[::-1] Funktion, wir können die Elemente eines Strings invertieren, und wir wenden diese Funktion auf jedes Element im Tupel an, indem wir Listenverständnis verwenden.

Damit ist unsere Diskussion beendet!!

Abschließende Anmerkungen

Ich hoffe dir hat der Beitrag gefallen.

Wenn du dich mit mir verbinden möchtest, Zögern Sie nicht, mit mir in Kontakt zu bleiben. von Email.

Ihre Vorschläge und Zweifel sind hier im Kommentarbereich willkommen. Danke, dass du meinen Beitrag gelesen hast!!

Die in diesem Beitrag gezeigten Medien sind nicht Eigentum von DataPeaker und werden nach Ermessen des Autors verwendet.

Abonniere unseren Newsletter

Wir senden Ihnen keine SPAM-Mail. Wir hassen es genauso wie du.

Datenlautsprecher