Heim >Backend-Entwicklung >Python-Tutorial >Wie verwendet man if-else-Anweisungen im Python-Listenverständnis?

Wie verwendet man if-else-Anweisungen im Python-Listenverständnis?

Susan Sarandon
Susan SarandonOriginal
2024-11-05 09:35:02607Durchsuche

How do you use if-else statements within Python list comprehensions?

If-Else in Listenverständnissen

In Python bieten Listenverständnisse eine kompakte Möglichkeit, neue Listen zu erstellen, indem eine vorhandene Liste iteriert und auf jedes Element eine Transformation angewendet wird . Das Schreiben einer if-else-Anweisung innerhalb eines Listenverständnisses kann jedoch schwierig sein.

Betrachten Sie das folgende Beispiel:

<code class="python">l = [22, 13, 45, 50, 98, 69, 43, 44, 1]</code>

Angenommen, Sie möchten eine neue Liste erstellen, indem Sie 1 zu größeren Zahlen hinzufügen als oder gleich 45 und 5 für Zahlen kleiner als 45.

Der Versuch, dies als Listenverständnis mit einer if-else-Anweisung wie dieser zu schreiben:

<code class="python">[x+1 for x in l if x >= 45 else x+5]</code>

wird zu einem führen Syntaxfehler.

Um eine if-else-Operation innerhalb eines Listenverständnisses auszuführen, können Sie den ternären bedingten Operator verwenden:

<code class="python">[x+1 if x >= 45 else x+5 for x in l]</code>

Dieser Ausdruck ergibt Folgendes:

<code class="python">[27, 18, 46, 51, 99, 70, 48, 49, 6]</code>

In diesem Beispiel wird „x 1“ für jedes x größer oder gleich 45 ausgeführt, und „x 5“ wird für jedes x kleiner als 45 ausgeführt.

Das obige ist der detaillierte Inhalt vonWie verwendet man if-else-Anweisungen im Python-Listenverständnis?. Für weitere Informationen folgen Sie bitte anderen verwandten Artikeln auf der PHP chinesischen Website!

Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn