Der Moduloperator (%) in Python

Wenn wir ein „%“ sehen, fällt uns als Erstes der Prozentsatz ein, aber in der Computersprache bedeutet das Modulo-Operation (%), das den Rest der Division des linken Operanden durch den rechten Operanden zurückgibt oder, um es für Laien auszudrücken, es findet Rest oder unterschriebener Rest nach der Division einer Zahl durch eine andere.

Gegeben sind zwei positive Zahlen, a und n, a modulo n (a % n, abgekürzt als a gegen n) ist der Rest von Euklidische Division von a durch n, wobei a der Dividend und n der Divisor ist.

Der Python-Modulo-Operator

Grundsätzlich wird die Python-Modulo-Operation verwendet, um den Rest einer Division zu erhalten. Der Modulo-Operator( % ) wird zusammen mit als arithmetische Operation betrachtet + , , / , * , ** , // . In den meisten Sprachen müssen beide Operanden dieses Modulo-Operators eine ganze Zahl sein. Aber Python Modulo ist in diesem Fall vielseitig. Die Operanden können entweder sein ganze Zahlen oder schwimmt .

Syntax:

a % b 

Hier wird a durch b dividiert und der Rest dieser Division zurückgegeben.

Modulo-Operator mit Ganzzahl

Speichert den Rest, der sich aus der Division von a durch b ergibt, in c

Python3




# inputs> a> => 13> b> => 5> c> => a> %> b> print> (a,> 'mod'> , b,> '='> ,> > c, sep> => ' '> )>

Ausgabe:

13 mod 5 = 3 

Modulo-Operator mit Float mit einer negativen Zahl.

Speichert den Rest, der sich aus der Division von d durch e ergibt, in f. Weitere Beispiele finden Sie unter So führen Sie Modulo mit negativen Werten in Python durch.

Python3




# inputs> d> => 15.0> e> => -> 7.0> f> => d> %> e> print> (d,> 'mod'> , e,> '='> ,> > f, sep> => ' '> )>

Ausgabe:

15.0 mod -7.0 = -6.0 

Beispiel mit dem Modulo-Operator

Angenommen, wir möchten den Rest jeder Zahl von 1 bis n berechnen, wenn wir sie durch eine feste Zahl k dividieren.

Python3




# function is defined for finding out> # the remainder of every number from 1 to n> def> findRemainder(n, k):> > > for> i> in> range> (> 1> , n> +> 1> ):> > # rem will store the remainder> > # when i is divided by k.> > rem> => i> %> k> > > print> (i,> 'mod'> , k,> '='> ,> > rem, sep> => ' '> )> # Driver code> if> __name__> => => '__main__'> :> > > # inputs> > n> => 5> > k> => 3> > > # function calling> > findRemainder(n, k)>

Ausgabe:

1 mod 3 = 1 2 mod 3 = 2 3 mod 3 = 0 4 mod 3 = 1 5 mod 3 = 2 

ZeroDivisionError in Python

Die einzige Ausnahme, die Sie bei der Python-Modulo-Operation erhalten, ist ZeroDivisionError . Dies geschieht, wenn der Teileroperand des Modulo-Operators wird null . Das bedeutet die Der rechte Operand darf nicht Null sein . Sehen wir uns den folgenden Code an, um mehr über diese Python-Ausnahme zu erfahren.

Python3




# inputs> a> => 14> b> => 0> # exception handling> try> :> > print> (a,> 'mod'> , b,> '='> ,> > a> %> b, sep> => ' '> )> > except> ZeroDivisionError as err:> > print> (> 'Cannot divide by zero!'> +> > 'Change the value of the right operand.'> )>

Ausgabe:

Cannot divide by zero! Change the value of the right operand.