GNU/Linux >> LINUX-Kenntnisse >  >> Linux

Python if..else-Anweisung

Entscheidungsfindung ist eines der grundlegendsten Konzepte der Computerprogrammierung. Python unterstützt die in anderen Sprachen üblichen Flusssteuerungsanweisungen mit einigen Modifikationen. Der if control-Anweisung ist eine der grundlegendsten und bekanntesten Anweisungen, die verwendet wird, um Code basierend auf einer bestimmten Bedingung auszuführen.

In diesem Artikel gehen wir auf die Grundlagen des if ein -Anweisung in Python.

Python if Anweisung #

Die grundlegendste Form des if Die Anweisung in Python lautet wie folgt:

if EXPRESSION:
  STATEMENT

Der if Anweisung beginnt mit dem if Schlüsselwort gefolgt vom bedingten Ausdruck.

Der EXPRESSION muss gefolgt werden von (: ) Doppelpunkt. Wenn der EXPRESSION ergibt True , die STATEMENT hingerichtet wird. Wenn EXPRESSION gibt False zurück , nichts passiert; die STATEMENT wird ignoriert. STATEMENT eine beliebige Anweisung sein, einschließlich mehrerer Anweisungen oder weiter verschachtelter if Aussagen. Um keine Anweisungen auszuführen, verwenden Sie pass Aussage.

Die STATEMENT Block beginnt mit einer Einrückung und endet mit der ersten nicht eingerückten Zeile. Die meisten Leute entscheiden sich entweder für einen 4-Leerzeichen- oder einen 2-Leerzeichen-Einzug. Der offizielle Styleguide für Python-Code empfiehlt die Verwendung von 4 Leerzeichen pro Einrückungsebene und das Vermeiden der Kombination von Tabulatoren und Leerzeichen für Einrückungen.

Schauen wir uns das folgende Beispielskript an, das prüft, ob eine bestimmte Zahl größer als 5 ist.

number = int(input('Enter a number: '))

if number > 5:
    print(number, 'is greater than 5.')

Speichern Sie den Code in einer Datei und führen Sie ihn über die Befehlszeile aus:

python test.py

Das Skript fordert Sie auf, eine Zahl einzugeben. Wenn Sie beispielsweise 10 eingeben, wird der Bedingungsausdruck zu True ausgewertet (10 ist größer als 5) und der print Funktion wird ausgeführt.

10 is greater than 5.

Python unterstützt Standard-Vergleichsoperationen:

  • a == b - Wahr, wenn a und b sind gleich.
  • a != b - Wahr, wenn a und b sind nicht gleich.
  • a > b - Wahr, wenn a ist größer als b .
  • a >= b - Wahr, wenn a gleich oder größer als b ist .
  • a < b - Wahr, wenn a ist kleiner als b .
  • a <= b - Wahr, wenn a gleich oder kleiner als b ist .

Sie können auch den in verwenden Schlüsselwort, um zu prüfen, ob ein Wert in einem Iterable (Zeichenfolge, Liste, Tupel, Wörterbuch usw.) vorhanden ist:

s = 'linuxize'
if 'ze' in s:
    print('True.')

Hier ist ein weiteres Beispiel für die Verwendung eines Wörterbuchs:

d = {'a': 2, 'b': 4}
if 'a' in d:
    print('True.')

Bei Verwendung in einem Wörterbuch ist der in Schlüsselwort prüft, ob das Wörterbuch einen bestimmten Schlüssel hat.

Um den bedingten Ausdruck zu negieren, verwenden Sie den logischen not Betreiber:

number = int(input('Enter a number: '))

if not number < 5:
    print(number, 'is greater than 5.')

if..else Anweisung #

Ein if..else Anweisung wertet eine Bedingung aus und führt je nach Ergebnis eine der beiden Anweisungen aus.

Der Python if..else Die Anweisung hat folgende Form:

if EXPRESSION:
    STATEMENT1
else:
    STATEMENT2

Wenn EXPRESSION ergibt True , STATEMENT1 wird ausgeführt. Andernfalls, wenn EXPRESSION gibt False zurück , STATEMENT2 wird ausgeführt. Sie können nur einen else haben Klausel in der Anweisung.

Das else Schlüsselwort muss mit (: enden ) Doppelpunkt und auf der gleichen Einrückungsebene wie der entsprechende if sein Schlüsselwort.

Lassen Sie uns ein else hinzufügen -Klausel zum vorherigen Beispielskript:

number = int(input('Enter a number: '))

if number > 5:
    print(number, 'is greater than 5.')
else:
    print(number, 'is equal or less than 5.')

Wenn Sie den Code ausführen und eine Zahl eingeben, gibt das Skript eine andere Meldung aus, je nachdem, ob die Zahl größer oder kleiner/gleich 5 ist.

if..elif..else Anweisung #

Das elif Das Schlüsselwort ist die Abkürzung für else if .

Der Python if..elif..else Die Anweisung hat folgende Form:

if EXPRESSION1:
    STATEMENT1
elif: EXPRESSION2:
    STATEMENT2
else:
    STATEMENT3

Wenn EXPRESSION1 ergibt True , die STATEMENTS1 wird ausgeführt. Wenn der EXPRESSION2 ergibt True , die STATEMENTS2 wird ausgeführt. Wenn keiner der Ausdrücke zu True ausgewertet wird , die STATEMENTS3 wird ausgeführt.

Das elif Schlüsselwort muss mit (: enden ) Doppelpunkt und auf derselben Einrückungsebene wie der entsprechende if sein Stichwort. Sie können einen oder mehrere elif haben Klauseln in der Erklärung. Das else Klausel ist optional. Wenn der else -Klausel wird nicht verwendet, und alle Ausdrücke ergeben False , keine der Anweisungen wird ausgeführt.

Die Bedingungen werden nacheinander ausgewertet. Sobald eine Bedingung True zurückgibt , werden die verbleibenden Bedingungen nicht ausgeführt und die Programmsteuerung bewegt sich zum Ende des if Aussagen.

Lassen Sie uns ein elif hinzufügen Klausel zum vorherigen Skript:

number = int(input('Enter a number: '))

if number > 5:
    print(number, 'is greater than 5.')
elif number < 5:
    print(number, 'is less than 5.')
else:
    print(number, 'is equal to 5.')

Im Gegensatz zu den meisten Programmiersprachen hat Python keinen switch oder case Aussagen. Eine Folge von mehreren elif -Anweisungen können als Ersatz für den switch verwendet werden oder case .

Verschachteltes if Anweisungen #

Python erlaubt Ihnen, if zu verschachteln Anweisungen innerhalb von if Aussagen. Generell sollten Sie immer übermäßige Einrückungen vermeiden und versuchen, elif zu verwenden anstatt if zu verschachteln Aussagen.

Das folgende Skript fordert Sie auf, drei Zahlen einzugeben, und gibt die größte Zahl unter den Zahlen aus.

number1 = int(input('Enter the first number: '))
number2 = int(input('Enter the second number: '))
number3 = int(input('Enter the third number: '))

if number1 > number2:
    if number1 > number3:
        print(number1, 'is the largest number.')
    else:
        print(number3, 'is the largest number.')
else:
    if number2 > number3:
        print(number2, 'is the largest number.')
    else:
        print(number3, 'is the largest number.')

So sieht die Ausgabe aus:

Enter the first number: 455 
Enter the second number: 567
Enter the third number: 354
567 is the largest number.

Mehrere Bedingungen #

Der logische or und and Mit Operatoren können Sie mehrere Bedingungen im if kombinieren Aussagen.

Hier ist eine andere Version des Skripts, um die größte Zahl unter den drei Zahlen zu drucken. In dieser Version anstelle des verschachtelten if -Anweisungen verwenden wir die logischen and Operator und elif .

number1 = int(input('Enter the first number: '))
number2 = int(input('Enter the second number: '))
number3 = int(input('Enter the third number: '))

if number1 > number2 and number1 > number3:
    print(number1, 'is the largest number.')
elif number2 > number3 and number2 > number3:
    print(number2, 'is the largest number.')
else:
    print(number3, 'is the largest number.')

Schlussfolgerung #

Der if , if..else und if..elif..else -Anweisungen können Sie den Ablauf der Python-Ausführung steuern, indem Sie bestimmte Bedingungen auswerten.

Wenn Sie Fragen oder Feedback haben, können Sie gerne einen Kommentar hinterlassen.


Linux
  1. So verwenden Sie die Bedingungsanweisung if else in Bash-Skript

  2. Python 3.3.2-Installation?

  3. Installieren Sie python-novaclient unter Windows

  4. Richten Sie Python unter IIS 7.5 ein

  5. 4 Beispiele für Awk-If-Anweisungen ( if, if else, if else if, :? )

Bash-Case-Statement

Bash if..else-Anweisung

So überprüfen Sie die Python-Version

Bash-Skripting – Case-Statement

Bash If Else Syntax mit Beispielen

Bash If Else und andere bedingte Anweisungen verstehen