Wie man prüft, ob eine Zahl in Python durch eine andere teilbar 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 mit Python prüfen können, ob eine Zahl durch eine andere Zahl teilbar ist. Das Lab konzentriert sich darauf, das Konzept der Teilbarkeit zu verstehen und den Modulo-Operator (%) anzuwenden, um zu bestimmen, ob eine Zahl ohne Rest durch eine andere geteilt werden kann.

Sie werden ein Python-Skript namens divisibility.py erstellen, das zeigt, wie der Modulo-Operator verwendet wird, um die Teilbarkeit durch 2, 3 und 5 zu prüfen. Indem Sie das Skript ausführen, werden Sie die Ausgabe beobachten, die angibt, ob die Zahl 10 durch jede dieser Zahlen teilbar ist. Diese praktische Erfahrung wird Ihr Verständnis der Teilbarkeit und des Modulo-Operators in Python festigen.


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/numeric_types("Numeric Types") python/ControlFlowGroup -.-> python/conditional_statements("Conditional Statements") python/ControlFlowGroup -.-> python/for_loops("For Loops") python/ErrorandExceptionHandlingGroup -.-> python/catching_exceptions("Catching Exceptions") subgraph Lab Skills python/numeric_types -.-> lab-559547{{"Wie man prüft, ob eine Zahl in Python durch eine andere teilbar ist"}} python/conditional_statements -.-> lab-559547{{"Wie man prüft, ob eine Zahl in Python durch eine andere teilbar ist"}} python/for_loops -.-> lab-559547{{"Wie man prüft, ob eine Zahl in Python durch eine andere teilbar ist"}} python/catching_exceptions -.-> lab-559547{{"Wie man prüft, ob eine Zahl in Python durch eine andere teilbar ist"}} end

Über Teilbarkeit lernen

In diesem Schritt lernen Sie über die Teilbarkeit in der Mathematik und wie sie sich auf die Programmierung bezieht. Die Teilbarkeit ist ein grundlegendes Konzept, das uns hilft zu verstehen, ob eine Zahl ohne Rest durch eine andere Zahl geteilt werden kann. Dieses Konzept ist in verschiedenen Programmieraufgaben von entscheidender Bedeutung, wie z. B. bei der Datenvalidierung, der Optimierung von Algorithmen und vieles mehr.

Beginnen wir mit einem einfachen Beispiel. Betrachten Sie die Zahl 10. Sie ist durch 2 teilbar, weil 10 geteilt durch 2 gleich 5 ist, ohne Rest. Ebenso ist 10 durch 5 teilbar, weil 10 geteilt durch 5 gleich 2 ist, ohne Rest. Allerdings ist 10 nicht durch 3 teilbar, weil 10 geteilt durch 3 gleich 3 mit einem Rest von 1 ist.

In Python können wir die Teilbarkeit mit dem Modulo-Operator (%) prüfen. Der Modulo-Operator gibt den Rest einer Division zurück. Wenn der Rest 0 ist, bedeutet dies, dass die Zahl teilbar ist.

Um dies zu demonstrieren, erstellen wir ein Python-Skript namens divisibility.py in Ihrem ~/project-Verzeichnis mit dem VS Code-Editor.

## Create a script named divisibility.py
## Open VS Code editor and create a new file named divisibility.py in ~/project directory
## Add the following content to the file

number = 10

## Check if the number is divisible by 2
if number % 2 == 0:
    print(f"{number} is divisible by 2")
else:
    print(f"{number} is not divisible by 2")

## Check if the number is divisible by 3
if number % 3 == 0:
    print(f"{number} is divisible by 3")
else:
    print(f"{number} is not divisible by 3")

## Check if the number is divisible by 5
if number % 5 == 0:
    print(f"{number} is divisible by 5")
else:
    print(f"{number} is not divisible by 5")

Jetzt führen wir das Skript mit dem Python-Interpreter aus. Öffnen Sie Ihr Terminal und navigieren Sie zum ~/project-Verzeichnis:

cd ~/project

Führen Sie dann das Skript aus:

python divisibility.py

Sie sollten die folgende Ausgabe sehen:

10 is divisible by 2
10 is not divisible by 3
10 is divisible by 5

Diese Ausgabe bestätigt, dass 10 durch 2 und 5 teilbar ist, aber nicht durch 3, wie wir zuvor besprochen haben.

Das Verständnis der Teilbarkeit und die Verwendung des Modulo-Operators sind essentielle Fähigkeiten für jeden Python-Programmierer. In den nächsten Schritten werden wir fortgeschrittene Anwendungen dieser Konzepte untersuchen.

Verwendung des Modulo-Operators

In diesem Schritt werden wir tiefer in den Modulo-Operator (%) eintauchen und seine verschiedenen Anwendungen in Python erkunden. Wie Sie im vorherigen Schritt gelernt haben, gibt der Modulo-Operator den Rest einer Division zurück. Diese scheinbar einfache Operation ist unglaublich vielseitig und kann zur Lösung einer Vielzahl von Programmierproblemen eingesetzt werden.

Ein häufiger Anwendungsfall für den Modulo-Operator ist die Bestimmung, ob eine Zahl gerade oder ungerade ist. Eine gerade Zahl ist durch 2 teilbar, während eine ungerade Zahl dies nicht ist. Wir können dies leicht mit dem Modulo-Operator prüfen:

## Create a script named even_odd.py
## Open VS Code editor and create a new file named even_odd.py in ~/project directory
## Add the following content to the file

number = 17

if number % 2 == 0:
    print(f"{number} is even")
else:
    print(f"{number} is odd")

Speichern Sie diesen Code als even_odd.py in Ihrem ~/project-Verzeichnis. Jetzt führen wir das Skript aus:

cd ~/project
python even_odd.py

Sie sollten die folgende Ausgabe sehen:

17 is odd

Eine weitere nützliche Anwendung des Modulo-Operators ist das Zyklen durch eine Sequenz von Zahlen. Nehmen Sie beispielsweise an, Sie möchten einer Reihe von Elementen verschiedene Farben zuweisen und haben nur eine begrenzte Anzahl von Farben zur Verfügung. Sie können den Modulo-Operator verwenden, um durch die Farben zu zyklen:

## Create a script named colors.py
## Open VS Code editor and create a new file named colors.py in ~/project directory
## Add the following content to the file

items = ["apple", "banana", "cherry", "date", "elderberry"]
colors = ["red", "yellow", "purple"]

for i, item in enumerate(items):
    color_index = i % len(colors)
    color = colors[color_index]
    print(f"{item} is {color}")

Speichern Sie diesen Code als colors.py in Ihrem ~/project-Verzeichnis. Jetzt führen wir das Skript aus:

cd ~/project
python colors.py

Sie sollten die folgende Ausgabe sehen:

apple is red
banana is yellow
cherry is purple
date is red
elderberry is yellow

In diesem Beispiel stellt der Modulo-Operator sicher, dass der color_index innerhalb der Grenzen der colors-Liste bleibt, wodurch wir wiederholt durch die Farben zyklen können.

Der Modulo-Operator ist auch nützlich für Aufgaben wie die Validierung von Eingabedaten, die Generierung von Mustern und die Implementierung von kryptografischen Algorithmen. Wenn Sie Ihre Python-Reise fortsetzen, werden Sie viele weitere kreative Möglichkeiten finden, diesen leistungsstarken Operator zu nutzen.

Umgang mit Division durch Null

In diesem Schritt lernen Sie, wie Sie Division-durch-Null-Fehler in Python behandeln können. Eine Division durch Null ist ein häufiger Fehler, der auftritt, wenn Sie versuchen, eine Zahl durch Null zu teilen. In der Mathematik ist die Division durch Null undefiniert, und in der Programmierung führt sie typischerweise zu einem Fehler, der Ihr Programm abstürzen lassen kann.

Schauen wir uns an, was passiert, wenn wir in Python versuchen, durch Null zu teilen:

## Create a script named division_error.py
## Open VS Code editor and create a new file named division_error.py in ~/project directory
## Add the following content to the file

numerator = 10
denominator = 0

result = numerator / denominator

print(result)

Speichern Sie diesen Code als division_error.py in Ihrem ~/project-Verzeichnis. Jetzt führen wir das Skript aus:

cd ~/project
python division_error.py

Sie sollten eine Fehlermeldung wie diese sehen:

Traceback (most recent call last):
  File "/home/labex/project/division_error.py", line 4, in <module>
    result = numerator / denominator
ZeroDivisionError: division by zero

Der ZeroDivisionError zeigt an, dass wir versucht haben, durch Null zu teilen. Um zu verhindern, dass dieser Fehler unser Programm abstürzen lässt, können wir Fehlerbehandlungstechniken verwenden. Ein gängiger Ansatz ist die Verwendung eines try-except-Blocks:

## Create a script named safe_division.py
## Open VS Code editor and create a new file named safe_division.py in ~/project directory
## Add the following content to the file

numerator = 10
denominator = 0

try:
    result = numerator / denominator
    print(result)
except ZeroDivisionError:
    print("Error: Cannot divide by zero")

Speichern Sie diesen Code als safe_division.py in Ihrem ~/project-Verzeichnis. Jetzt führen wir das Skript aus:

cd ~/project
python safe_division.py

Sie sollten die folgende Ausgabe sehen:

Error: Cannot divide by zero

In diesem Beispiel versucht der try-Block, die Division durchzuführen. Wenn ein ZeroDivisionError auftritt, wird der except-Block ausgeführt, der eine Fehlermeldung ausgibt, anstatt das Programm abstürzen zu lassen.

Ein anderer Ansatz besteht darin, zu prüfen, ob der Divisor Null ist, bevor die Division durchgeführt wird:

## Create a script named check_division.py
## Open VS Code editor and create a new file named check_division.py in ~/project directory
## Add the following content to the file

numerator = 10
denominator = 0

if denominator == 0:
    print("Error: Cannot divide by zero")
else:
    result = numerator / denominator
    print(result)

Speichern Sie diesen Code als check_division.py in Ihrem ~/project-Verzeichnis. Jetzt führen wir das Skript aus:

cd ~/project
python check_division.py

Sie sollten die folgende Ausgabe sehen:

Error: Cannot divide by zero

Beide Ansätze ermöglichen es Ihnen, Division-durch-Null-Fehler elegant zu behandeln und zu verhindern, dass Ihr Programm abstürzt. Wählen Sie den Ansatz, der Ihren Anforderungen und Ihrem Codierstil am besten entspricht.

Zusammenfassung

In diesem Lab haben Sie das Konzept der Teilbarkeit in der Mathematik und seine Anwendung in der Python-Programmierung kennengelernt. Sie haben untersucht, wie Sie feststellen können, ob eine Zahl durch eine andere Zahl teilbar ist, indem Sie prüfen, ob der Rest ihrer Division Null ist.

Sie haben den Modulo-Operator (%) in Python verwendet, um den Rest einer Division zu ermitteln, und bedingte Anweisungen implementiert, um auszugeben, ob eine Zahl durch 2, 3 und 5 teilbar ist. Sie haben ein Python-Skript namens divisibility.py erstellt und ausgeführt, um dieses Konzept zu demonstrieren.