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.