Was bedeutet // in Python

Vaibhhav Khetarpal 12 Oktober 2021
Was bedeutet // in Python

Operatoren existieren in allen Programmiersprachen und haben eine grundlegende Funktion, um verschiedene Operationen an Werten und Variablen durchzuführen.

Obwohl es in Python viele Arten von Operatoren gibt, konzentrieren wir uns in diesem Artikel nur auf eine Art von Operator: den arithmetischen Operator.

Arithmetische Operatoren können verwendet werden, um einfache mathematische Operationen wie Addition, Multiplikation, Subtraktion usw. durchzuführen.

In diesem Tutorial wird ein solcher arithmetischer Operator, der Floor-Division-Operator, erläutert.

Verwendung von den Operator // in Python für die Floor Division

Der Operator //, auch als Floor Division Operator bekannt, fällt in die Kategorie der arithmetischen Operatoren und ist nichts anderes als ein Divisionsoperator, der eine ganze Zahl als Ausgabe liefert und den Rest verwirft.

Der ganzzahlige Divisionsprozess in Python ist nicht unbedingt der gleiche wie in anderen gängigen Programmiersprachen, wenn man bedenkt, dass er auf negative Unendlichkeit statt auf Null rundet.

Der Operator // wurde den Programmierern in Python 3 eingeführt, um einen sich konstant verhaltenden Integer-Division-Operator bereitzustellen. In Python 3 und höher führt der Operator / oder der einzelne Divisionsoperator eine Gleitkomma-Division durch, selbst wenn die verwendeten Argumente Ganzzahlen sind.

In den Python-Versionen vor dem Start des Operators // wurde bei der Division zweier Ganzzahlen die Etagenteilung standardmäßig mit dem Operator / durchgeführt.

Der folgende Code zeigt die Verwendung des Etagenteilungsoperators.

x = 15
y = 4
ans = x // y
print(ans)

Ausgabe:

3

Der Einzeldivisionsoperator neigt dazu, sich anormal zu verhalten und erzeugt ungenaue Antworten, wenn er mit großen Zahlen umgeht. Die Einführung der Etagenunterteilung oder des Operators // maskiert diesen Nachteil der Einzelunterteilung oder des Operators /.

Der folgende Code zeigt den Unterschied zwischen beiden Operatoren beim Umgang mit einer großen Zahl.

x = 50000000000

a1 = int(x * (x + 3) / 2)
a2 = x * (x + 3) // 2

print("Using single division operator: ", a1)
print("Using floor division operator: ", a2)

Ausgabe:

Using single division operator:  1250000000074999922688
Using floor division operator:  1250000000075000000000

In diesem Fall gibt der Etagenteilungsoperator das korrekte Ergebnis zurück, während der Einzelunterteilungsoperator keine genauen Werte liefert.

Darüber hinaus bietet der Operator // eine bis zu dreimal bessere Leistung als der Operator /. Es hilft dabei, die Ausführung des Codes erheblich zu steigern.

Vaibhhav Khetarpal avatar Vaibhhav Khetarpal avatar

Vaibhhav is an IT professional who has a strong-hold in Python programming and various projects under his belt. He has an eagerness to discover new things and is a quick learner.

LinkedIn

Verwandter Artikel - Python Operator