Listenverständnis Python

Ein Python-Listenverständnis ist eine Möglichkeit, eine Liste basierend auf einer vorhandenen Liste zu erstellen. Listenverständnisse werden häufig verwendet, um Elemente aus einer Liste herauszufiltern oder die Werte in einer vorhandenen Liste zu ändern. Listenverständnisse werden in eckige Klammern eingeschlossen.

Wenn Sie mit Listen arbeiten, möchten Sie möglicherweise eine Liste basierend auf dem Inhalt einer vorhandenen Sequenz erstellen. Sie können beispielsweise eine Liste basierend auf einer Zeichenfolge erstellen. Oder Sie möchten eine Liste erstellen, die den Inhalt einer anderen Liste mit zwei multipliziert.

Hier kommt das Listenverständnis ins Spiel. In diesem Tutorial werden mit Beispielen die Grundlagen von Python-Listen und ihre Vorgehensweise erläutert Verwenden Sie Listenverständnisse.

Python-Listen: Eine Auffrischung

Die Listendatenstruktur ermöglicht es Ihnen, Sammlungen von Elementen in Python zu speichern. Listen werden häufig verwendet, wenn Sie mit mehreren Werten arbeiten möchten, die in irgendeiner Weise miteinander verbunden sind.

Sie können beispielsweise eine Liste verwenden, um alle in einer Eisdiele verkauften Eissorten zu speichern. Oder Sie können eine Liste verwenden, um eine Liste der Telefonnummern der Mitglieder eines Weinclubs zu speichern.

Hier ist ein Beispiel fur eine Liste in Python:

Jetzt, da wir die Grundlagen von Listen uberarbeitet haben, können wir uber die Verwendung von Listenverständnissen sprechen.

Python-Listenverständnis

Ein Python-Listenverständnis erstellt eine neue Liste aus dem Inhalt einer anderen Liste. Sie können ein Listenverständnis verwenden, um eine Liste zu duplizieren oder den Inhalt einer vorhandenen Liste in eine neue Liste zu ändern. Oder Sie können den Inhalt eines anderen Iterables in eine Liste mit Listenverständnis ubertragen.

81 % der Teilnehmer gaben an, dass sie sich nach dem Besuch eines Bootcamps hinsichtlich ihrer Berufsaussichten im Tech-Bereich sicherer fuhlten. Lassen Sie sich noch heute in ein Bootcamp einweisen.

Der durchschnittliche Bootcamp-Absolvent verbrachte weniger als sechs Monate im Karriereubergang, vom Beginn eines Bootcamps bis zur Suche nach seinem ersten Job.

Sie können Filter angeben, damit Ihre neue Liste enthält nur bestimmte Werte. Sie können beispielsweise eine neue Liste aus einer Liste von Nummern erstellen. Ihre neue Liste darf nur Zahlen größer als 250 enthalten.

Die Syntax fur ein Listenverständnis in Python lautet wie folgt:

Diese Syntax ähnelt einem Python for-Anweisung. Aber die Aussage steht in einer Zeile. Um zwischen einer for-Anweisung zu unterscheiden, wird ein Listenverständnis in eckige Klammern eingeschlossen.

Die obige Syntax besteht aus drei Teilen:

  • Ausdruck: Der Endwert, der in die neue Liste aufgenommen wird.
  • item: Das einzelne Element in der Liste, uber das Sie iterieren.
  • list: Die Liste oder das iterierbare Objekt, das das Listenverst√§ndnis durchl√§uft (akzeptable Datentypen Tupel, Strings und Listen einschlie√üen).

Sie können ein Listenverständnis mit einer Python if…else-Anweisung inside:

Dieses Verständnis fugt Elemente nur dann zur Liste hinzu, wenn sie die angegebene Bedingung erfullen.

Mit dem Listenverständnis können Sie eine neue Liste aus einer bestehenden erstellen, ohne vollständige fur zu definieren Aussagen. fur stat ements nehmen mindestens zwei Zeilen Code in Anspruch, während Sie ein Listenverständnis in einer Zeile schreiben können.

Manche Leute sagen, dass Listenverständnisse eher Python-Code sind. Dies liegt daran, dass sie effizienter sind als eine kurze for-Anweisung.

Beispiel fur Python-Listenverständnis

Angenommen, wir möchten eine Liste aller Huhner erstellen Pizzen, die wir in unserem Geschäft verkaufen. Wir werden alle Huhnchenpizzas in eine Kategorie Huhnchen auf unserer Speisekarte verschieben. Dazu könnten wir unsere Pizzen mit for-Anweisungen filtern. Oder wir könnten unsere Liste mit einem Listenverständnis filtern.

Wir könnten ein Listenverständnis verwenden, um eine neue Liste von Pizzen zu erstellen, deren Namen Huhnchen basierend auf unserer bestehenden Liste von Pizzen enthalten . Wir könnten dies mit diesem Code tun:

Unsere comprehension gibt die folgende Ausgabeliste zuruck:

In unserem Code definieren wir zunächst eine Liste von Pizzen auf unserer Speisekarte. Unsere Pizzen werden in der Python-Variable namens Pizzen gespeichert. Dann verwenden wir ein Listenverständnis, um eine neue Liste von Pizzen zu erstellen, deren Namen Huhn enthalten.

Unser Listenverständnis besteht aus folgenden Teilen:

  • p: Dies ist der Wert, der unserer Liste hinzugefugt werden muss.
  • fur p in Pizzen: Dies geht durch jede Pizza in unserer " Pizzen‚" Liste.
  • wenn "Huhn‚" in p: Hiermit wird uberpruft, ob jede Pizza "Huhn‚" enth√§lt. Wenn dieser Wert True ergibt, wird der in "p‚" wird unserer Liste hinzugefugt.

Unser Listenverständnis benötigte nur eine Codezeile, während wir in unserem nächsten Beispiel drei Codezeilen mit einer for-Anweisung verwenden mussen es funktioniert. Unser nächstes Beispiel zeigt, inwieweit Listenverständnisse Ihnen helfen, saubereren Code zu schreiben.

Ohne ein Listenverständnis

Kehren wir zum Huhnchenpizza-Beispiel zuruck. Ohne a Listenverständnis, wenn wir eine Liste von Huhnchenpizzas auf unserer Speisekarte erstellen wollten, wurden wir diesen Code verwenden:

Unser Code gibt Folgendes zuruck:

Zuerst definieren wir zwei Listen. Eine Liste enthält eine Liste der in unserem Geschäft verkauften Pizzen. Die andere Liste enthält eine Liste aller Huhnchenpizzas, die wir verkaufen. Die Liste der von uns verkauften Huhnchenpizzas ist zunächst leer.

Wir verwenden ein "fur‚" Anweisung, jede Pizza in unserer Pizzaliste durchzugehen. Dann prufen wir, ob jede Pizza das Wort Huhn enth√§lt. Wenn eine Pizza das Wort Huhn enth√§lt, fugen wir diese Pizza unserer Liste der Huhnchenpizzas hinzu. In diesem Fall enthalten drei Pizzen Chicken, und alle drei dieser Pizzen werden unserer chicken_pizzas-Liste hinzugefugt.

"Karma kam in mein Leben, als Ich brauchte es am dringendsten und half mir schnell bei einem Bootcamp. Zwei Monate nach meinem Abschluss fand ich meinen Traumjob, der meinen Werten und Lebenszielen entsprach!"

Venus, Software Engineer bei Rockbot

Wie Sie sehen, verwenden wir drei Zeilen Code, um zu uberprufen, ob eine Pizza Huhnchen enthält und um es unserer Liste hinzuzufugen. Es gibt einen effizienteren Weg, diesen Code zu schreiben: Verwenden von Listenverständnissen.

Listenverständnissen Verwenden von if…else

Sie können auch ein if…else . verwenden Anweisung mit Listenverständnis.

Fruher haben wir eine if-Anweisung verwendet, um unserer Liste der Huhnchenpizzas eine Pizza hinzuzufugen. Wir haben nur eine Pizza hinzugefugt, wenn der Name der Pizza den Begriff . enthielt Huhnchen. Angenommen, wir erstellen eine Liste mit vegetarischen Pizzen.

Wir m√∂chten einer Liste "Fleisch‚" hinzufugen, wenn der Name einer Pizza Huhnchen und Vegetarisch, wenn ein Pizzaname kein Huhn enth√§lt.

Dies kann mit einem Listenverständnis erfolgen:

Unser Code gibt zuruck:

Lassen Sie uns unseren Code aufschlusseln. Zuerst deklarieren wir eine Liste von Pizzen namens pizzas. Dann verwenden wir ein Listenverständnis, um zu beurteilen, ob ein Pizzaname Huhn enthält oder nicht.

Wenn ein Pizzaname Huhn enthält, wird der Wert Fleisch wird unserer is_veggie-Liste hinzugefugt. Andernfalls wird der Wert Vegetarisch hinzugefugt.

Wie Sie sehen, ist der erste Wert in unserer is_veggie-Liste Fleisch , da der entsprechende Wert in der Liste Pizzen Huhnchen ist. Unser nächster Wert ist jedoch Vegetarisch, da der entsprechende Wert in der Liste Pizzen Margherita ist, der kein Huhn.



Schlussfolgerung

Listenverständnisse ermöglichen die Erstellung eines neue Liste basierend auf einer bestehenden Liste. Mithilfe von Listenverständnissen können Sie eine Kopie einer Liste erstellen oder eine neue Liste erstellen, die Werte aus einer alten Liste herausfiltert.

In diesem Tutorial wurden anhand von Beispielen die Grundlagen von Python-Listen und wie sie erläutert um die Listenverständnistechnik zum Erstellen neuer Listen zu verwenden.

Möchten Sie mehr uber das Programmieren in Python erfahren? Sehen Sie sich unseren Leitfaden zum Erlernen von Python an. Dieser Leitfaden enthält eine Liste von Lernressourcen, die Ihnen dabei helfen, Ihre Reise zur Beherrschung von Python fortzusetzen.