Moduļa operators (%) Python
Kad mēs redzam “%”, pirmais, kas mums ienāk prātā, ir procenti, bet datorvalodā tas nozīmē modulo darbība (%), kas atgriež atlikušo daļu, dalot kreisās puses operandu ar labās puses operandu, vai, runājot parasts, tas atrod atlikumu vai parakstīja atlikumu pēc viena skaitļa dalīšanas ar citu.
Doti divi pozitīvi skaitļi a un n, modulis n (a % n, saīsināts kā a pret n) ir atlikums no Eiklīda iedalījums no a ar n, kur a ir dividende un n ir dalītājs.
Python Modulo operators
Būtībā Python modulo operācija tiek izmantota, lai iegūtu atlikušo dalījuma daļu. Moduļu operators ( % ) tiek uzskatīta par aritmētisku darbību, kopā ar + , – , / , * , ** , // . Lielākajā daļā valodu šī moduļu operatora abiem operandiem ir jābūt veseliem skaitlim. Bet Python Modulo šajā gadījumā ir daudzpusīgs. Operandi var būt vai nu veseli skaitļi vai pludiņi .
Sintakse:
a % b
Šeit a tiek dalīts ar b, un tiek atgriezta šī dalījuma atlikusī daļa.
Modulo operators ar veselu skaitli
Saglabā atlikušo daļu, kas iegūta, dalot a ar b, c
Python3
# inputs> a> => 13> b> => 5> c> => a> %> b> print> (a,> 'mod'> , b,> '='> ,> > c, sep> => ' '> )> |
Izvade:
13 mod 5 = 3
Modulo Operator Ar pludiņu ar negatīvu skaitli.
Saglabā atlikušo daļu, kas iegūta, dalot d ar e, f. Lai iegūtu vairāk piemēru, skatiet sadaļu Kā veikt Modulo ar negatīvām vērtībām programmā Python.
Python3
# inputs> d> => 15.0> e> => -> 7.0> f> => d> %> e> print> (d,> 'mod'> , e,> '='> ,> > f, sep> => ' '> )> |
Izvade:
15.0 mod -7.0 = -6.0
Piemērs, izmantojot Modulo operatoru
Pieņemsim, ka mēs vēlamies aprēķināt katra skaitļa atlikumu no 1 līdz n, dalītu ar fiksētu skaitli k.
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)> |
Izvade:
1 mod 3 = 1 2 mod 3 = 2 3 mod 3 = 0 4 mod 3 = 1 5 mod 3 = 2
ZeroDivisionError programmā Python
Vienīgais izņēmums, ko iegūstat ar Python modulo darbību, ir ZeroDivision Error . Tas notiek, ja modulo operatora dalītājs operands kļūst nulle . Tas nozīmē, pareizais operands nevar būt nulle . Apskatīsim šo kodu, lai uzzinātu par šo Python izņēmumu.
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.'> )> |
Izvade:
Cannot divide by zero! Change the value of the right operand.