Heim  >  Artikel  >  Backend-Entwicklung  >  Wie verwende ich if-Else-Anweisungen in Python-Listenverständnissen?

Wie verwende ich if-Else-Anweisungen in Python-Listenverständnissen?

Linda Hamilton
Linda HamiltonOriginal
2024-11-06 04:32:02633Durchsuche

How to Use if-Else Statements in Python List Comprehensions?

So verwenden Sie if-Else im Python-Listenverständnis

Listenverständnisse sind eine prägnante Möglichkeit, komplexe Operationen an Listen auszuführen. Sie ermöglichen die Erstellung einer neuen Liste basierend auf den Werten einer vorhandenen Liste. Manchmal müssen Sie jedoch die Elemente in der neuen Liste basierend auf einer bestimmten Bedingung bedingt ändern.

Stellen Sie sich beispielsweise das folgende Szenario vor: Sie haben eine Liste mit Zahlen namens l und möchten 1 hinzufügen Zahlen größer oder gleich 45 und addieren 5 zu Zahlen kleiner als 45.

Die Syntax, um dies mithilfe des Listenverständnisses zu erreichen, lautet wie folgt:

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

Die Verwendung des if- Die else-Anweisung in einem Listenverständnis kann zu einem Syntaxfehler führen. Um dies zu beheben, müssen Sie eine erweiterte Syntax verwenden, die das Einschließen der if-else-Anweisung in eckige Klammern beinhaltet:

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

Diese Syntax ersetzt effektiv die Schlüsselwörter if und else durch das Schlüsselwort then.

In Ihrem speziellen Fall wäre das aktualisierte Listenverständnis:

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

Dies gibt die gewünschte Ausgabe zurück:

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

Das obige ist der detaillierte Inhalt vonWie verwende ich if-Else-Anweisungen in Python-Listenverständnissen?. 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