El operador de módulo (%) en Python

Cuando vemos un '%', lo primero que nos viene a la mente es el porcentaje, pero en lenguaje informático, significa operación de módulo (%) que devuelve el resto de dividir el operando de la izquierda por el operando de la derecha o, en términos sencillos, encuentra el resto o resto firmado después de la división de un número por otro.

Dados dos números positivos, a y n, un módulo n (a % n, abreviado como a contra n) es el resto del división euclidiana de a por n, donde a es el dividendo y n es el divisor.

El operador de módulo de Python

Básicamente, la operación de módulo de Python se utiliza para obtener el resto de una división. El operador de módulo ( % ) se considera una operación aritmética, junto con + , , / , * , ** , // . En la mayoría de los idiomas, ambos operandos de este operador de módulo deben ser números enteros. Pero Python Modulo es versátil en este caso. Los operandos pueden ser números enteros o flota .

Sintaxis:

a % b 

Aquí, a se divide por b y se devuelve el resto de esa división.

Operador de módulo con número entero

Almacena el resto obtenido al dividir a por b, en c

Python3




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

Producción:

13 mod 5 = 3 

Operador de módulo Con flotante con un número negativo.

Almacena el resto obtenido al dividir d por e, en f. Para obtener más ejemplos, consulte Cómo realizar un módulo con valores negativos en Python.

Python3




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

Producción:

15.0 mod -7.0 = -6.0 

Ejemplo usando el operador de módulo

Supongamos que queremos calcular el resto de cada número del 1 al n cuando se divide por un número fijo 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)>

Producción:

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

Error de división cero en Python

La única excepción que obtiene con la operación del módulo de Python es Error de división cero . Esto sucede si el operando divisor del operador de módulo se vuelve cero . Eso significa que El operando correcto no puede ser cero. . Veamos el siguiente código para conocer esta excepción de Python.

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.'> )>

Producción:

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