Wie man prüft, ob eine Zahl in Python ungerade ist

PythonPythonBeginner
Jetzt üben

💡 Dieser Artikel wurde von AI-Assistenten übersetzt. Um die englische Version anzuzeigen, können Sie hier klicken

Einführung

In diesem Lab lernen Sie, wie Sie in Python prüfen können, ob eine Zahl ungerade ist. Das Lab konzentriert sich auf die Verwendung des Modulo-Operators (%), um zu bestimmen, ob eine Ganzzahl ungerade ist, indem geprüft wird, ob sie durch 2 ohne Rest teilbar ist.

Sie beginnen damit, ungerade Zahlen zu definieren und den Modulo-Operator auf eine Beispielzahl anzuwenden. Anschließend ändern Sie den Code, um verschiedene Zahlen zu testen und die Ausgabe zu beobachten, um Ihr Verständnis dafür zu festigen, wie der Modulo-Operator funktioniert, wenn es darum geht, ungerade und gerade Zahlen zu identifizieren. Abschließend validieren Sie den Eingabetyp, um sicherzustellen, dass der Code nicht-ganzzahlige Eingaben elegant verarbeitet.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL python(("Python")) -.-> python/BasicConceptsGroup(["Basic Concepts"]) python(("Python")) -.-> python/ControlFlowGroup(["Control Flow"]) python(("Python")) -.-> python/ErrorandExceptionHandlingGroup(["Error and Exception Handling"]) python/BasicConceptsGroup -.-> python/variables_data_types("Variables and Data Types") python/BasicConceptsGroup -.-> python/numeric_types("Numeric Types") python/BasicConceptsGroup -.-> python/type_conversion("Type Conversion") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ErrorandExceptionHandlingGroup -.-> python/catching_exceptions("Catching Exceptions") subgraph Lab Skills python/variables_data_types -.-> lab-559552{{"Wie man prüft, ob eine Zahl in Python ungerade ist"}} python/numeric_types -.-> lab-559552{{"Wie man prüft, ob eine Zahl in Python ungerade ist"}} python/type_conversion -.-> lab-559552{{"Wie man prüft, ob eine Zahl in Python ungerade ist"}} python/conditional_statements -.-> lab-559552{{"Wie man prüft, ob eine Zahl in Python ungerade ist"}} python/catching_exceptions -.-> lab-559552{{"Wie man prüft, ob eine Zahl in Python ungerade ist"}} end

Definition von ungeraden Zahlen

In diesem Schritt lernen Sie, wie Sie in Python ungerade Zahlen definieren können. Ungerade Zahlen sind Ganzzahlen, die nicht durch 2 ohne Rest teilbar sind. Sie verwenden den Modulo-Operator (%), um zu bestimmen, ob eine Zahl ungerade ist.

Zunächst erstellen wir mit dem VS Code-Editor eine Python-Datei namens odd_numbers.py in Ihrem ~/project-Verzeichnis.

~/project/odd_numbers.py

Öffnen Sie nun odd_numbers.py im Editor und fügen Sie folgenden Code hinzu:

number = 7
if number % 2 != 0:
    print(number, "is an odd number")
else:
    print(number, "is not an odd number")

In diesem Code:

  • Wir weisen der Variablen number die Ganzzahl 7 zu.
  • Wir verwenden den Modulo-Operator (%), um den Rest zu erhalten, wenn number durch 2 geteilt wird.
  • Wenn der Rest nicht gleich 0 ist, ist die Zahl ungerade, und wir geben eine entsprechende Nachricht aus.
  • Andernfalls ist die Zahl gerade, und wir geben eine andere Nachricht aus.

Speichern Sie die Datei odd_numbers.py.

Als Nächstes führen Sie das Skript im Terminal mit dem Befehl python aus:

python odd_numbers.py

Sie sollten die folgende Ausgabe sehen:

7 is an odd number

Lassen Sie uns nun die Datei odd_numbers.py ändern, um zu prüfen, ob eine andere Zahl, sagen wir 4, ungerade ist. Öffnen Sie odd_numbers.py im Editor und ändern Sie den Wert der Variablen number:

number = 4
if number % 2 != 0:
    print(number, "is an odd number")
else:
    print(number, "is not an odd number")

Speichern Sie die Datei odd_numbers.py erneut und führen Sie sie aus:

python odd_numbers.py

Sie sollten jetzt die folgende Ausgabe sehen:

4 is not an odd number

Dies zeigt, wie man in Python mit dem Modulo-Operator ungerade Zahlen definiert und prüft.

Anwenden des Modulo-Operators

In diesem Schritt vertiefen Sie Ihr Verständnis des Modulo-Operators (%) und erkunden seine Anwendungen bei der Bestimmung von geraden und ungeraden Zahlen. Der Modulo-Operator gibt den Rest einer Division zurück. Dies ist besonders nützlich für die Identifizierung von geraden und ungeraden Zahlen, da jede gerade Zahl, die durch 2 geteilt wird, einen Rest von 0 hat, während eine ungerade Zahl einen Rest von 1 hat.

Lassen Sie uns die Datei odd_numbers.py, die Sie im vorherigen Schritt erstellt haben, so ändern, dass sie Eingaben vom Benutzer akzeptiert und dann den Modulo-Operator anwendet.

Öffnen Sie odd_numbers.py im VS Code-Editor und ersetzen Sie den vorhandenen Code durch folgenden:

number = int(input("Enter an integer: "))

if number % 2 == 0:
    print(number, "is an even number.")
else:
    print(number, "is an odd number.")

Hier ist eine Aufschlüsselung des Codes:

  • input("Enter an integer: "): Dies fordert den Benutzer auf, eine Ganzzahl einzugeben. Die input()-Funktion gibt immer einen String zurück, daher müssen wir ihn in eine Ganzzahl umwandeln.
  • int(...): Dies wandelt die String-Eingabe in eine Ganzzahl um.
  • number % 2 == 0: Dies prüft, ob der Rest, wenn number durch 2 geteilt wird, gleich 0 ist. Wenn ja, ist die Zahl gerade.
  • Die if- und else-Anweisungen geben dann die entsprechende Nachricht aus, je nachdem, ob die Zahl gerade oder ungerade ist.

Speichern Sie die Datei odd_numbers.py.

Jetzt führen Sie das Skript im Terminal mit dem Befehl python aus:

python odd_numbers.py

Das Skript fordert Sie auf, eine Ganzzahl einzugeben. Geben Sie 10 ein und drücken Sie Enter:

Enter an integer: 10

Sie sollten die folgende Ausgabe sehen:

10 is an even number.

Führen Sie das Skript erneut aus und geben Sie 15 ein:

python odd_numbers.py
Enter an integer: 15
15 is an odd number.

Dies zeigt, wie man den Modulo-Operator verwendet, um zu bestimmen, ob eine vom Benutzer eingegebene Zahl ungerade oder gerade ist. Der Modulo-Operator ist ein grundlegendes Werkzeug in der Programmierung und wird in verschiedenen Anwendungen eingesetzt, die über die Prüfung auf gerade und ungerade Zahlen hinausgehen.

Validierung des Eingabetyps

In diesem Schritt lernen Sie, wie Sie den Eingabetyp validieren können, um sicherzustellen, dass der Benutzer eine Ganzzahl eingibt. Dies ist wichtig, da die int()-Funktion einen ValueError auslöst, wenn die Eingabe nicht in eine Ganzzahl umgewandelt werden kann (z. B. wenn der Benutzer Text eingibt).

Um potenzielle Fehler zu behandeln, verwenden Sie einen try-except-Block. Dies ermöglicht es Ihnen, Ausnahmen gracefully zu behandeln und zu verhindern, dass Ihr Programm abstürzt.

Öffnen Sie odd_numbers.py im VS Code-Editor und ersetzen Sie den vorhandenen Code durch folgenden:

try:
    number = int(input("Enter an integer: "))
    if number % 2 == 0:
        print(number, "is an even number.")
    else:
        print(number, "is an odd number.")
except ValueError:
    print("Invalid input. Please enter an integer.")

Hier ist eine Aufschlüsselung des Codes:

  • try:: Dieser Block enthält den Code, der eine Ausnahme auslösen könnte.
  • number = int(input("Enter an integer: ")): Diese Zeile versucht, die Eingabe des Benutzers in eine Ganzzahl umzuwandeln. Wenn die Eingabe keine gültige Ganzzahl ist, wird ein ValueError ausgelöst.
  • if number % 2 == 0: und else:: Diese Zeilen sind dieselben wie im vorherigen Schritt und prüfen, ob die Zahl gerade oder ungerade ist.
  • except ValueError:: Dieser Block fängt die ValueError-Ausnahme ab, wenn sie im try-Block ausgelöst wird.
  • print("Invalid input. Please enter an integer."): Diese Zeile gibt eine Fehlermeldung aus, wenn der Benutzer eine ungültige Eingabe macht.

Speichern Sie die Datei odd_numbers.py.

Jetzt führen Sie das Skript im Terminal mit dem Befehl python aus:

python odd_numbers.py

Das Skript fordert Sie auf, eine Ganzzahl einzugeben. Geben Sie abc ein und drücken Sie Enter:

Enter an integer: abc

Sie sollten die folgende Ausgabe sehen:

Invalid input. Please enter an integer.

Führen Sie das Skript erneut aus und geben Sie 7.5 ein:

python odd_numbers.py

Sie sollten die folgende Ausgabe sehen:

Invalid input. Please enter an integer.

Führen Sie das Skript erneut aus und geben Sie 11 ein:

python odd_numbers.py
Enter an integer: 11
11 is an odd number.

Dies zeigt, wie man den Eingabetyp validiert und potenzielle Fehler mit einem try-except-Block behandelt. Dies ist eine entscheidende Fähigkeit für das Schreiben von robusten und benutzerfreundlichen Programmen.

Zusammenfassung

In diesem Lab haben Sie gelernt, wie man ungerade Zahlen in Python definiert und den Modulo-Operator (%) verwendet, um zu bestimmen, ob eine Zahl ungerade oder gerade ist. Sie haben ein Python-Skript namens odd_numbers.py erstellt und den Modulo-Operator eingesetzt, um den Rest zu prüfen, wenn eine Zahl durch 2 geteilt wird. Wenn der Rest nicht 0 ist, wird die Zahl als ungerade identifiziert; andernfalls ist sie gerade.

Sie haben geübt, das Skript mit verschiedenen Zahlen zu ändern und die entsprechende Ausgabe zu beobachten, wodurch Sie Ihr Verständnis dafür festigen konnten, wie der Modulo-Operator bei der Identifizierung von geraden und ungeraden Zahlen funktioniert.