Pular para o conteúdo

Como usar o módulo de forma eficiente no Python?

[

Python Modulo na Prática: Como Usar o Operador %

por Jason Van Schooneveld basics python

Aprendendo Python

Introdução

Neste tutorial, você aprenderá:

  • Como o módulo funciona na matemática
  • Como usar o operador de módulo Python com diferentes tipos numéricos
  • Como o Python calcula os resultados de uma operação de módulo
  • Como substituir o . __mod__ () em suas classes para usá-las com o operador de módulo
  • Como usar o operador de módulo Python para resolver problemas do mundo real

O operador de módulo Python às vezes pode ser ignorado. No entanto, ter um bom entendimento desse operador fornecerá uma ferramenta inestimável em seu kit de ferramentas do Python.

Free Bonus: Clique aqui para obter um Python Cheat Sheet e aprender o básico do Python 3, como trabalhar com tipos de dados, dicionários, listas e funções Python.

Módulo na Matemática

O termo módulo vem de um ramo da matemática chamado aritmética modular. A aritmética modular lida com aritmética inteira em uma linha de números circular que possui um conjunto fixo de números. Todas as operações aritméticas realizadas nessa linha de números serão anuladas quando atingirem um determinado número chamado módulo.

Um exemplo clássico de módulo em aritmética modular é o relógio de doze horas. Um relógio de doze horas possui um conjunto fixo de valores, de 1 a 12. Ao contar em um relógio de doze horas, você conta até o módulo 12 e depois volta para 1. Um relógio de doze horas pode ser classificado como “módulo 12”, às vezes abreviado para “mod 12”.

O operador de módulo é usado quando você deseja comparar um número com o módulo e obter o número equivalente restrito ao intervalo do módulo.

Por exemplo, digamos que você queira determinar que horas seriam nove horas depois das 8:00 da manhã. Em um relógio de doze horas, você não pode simplesmente adicionar 9 a 8 porque você teria 17. Você precisa pegar o resultado, 17, e usar mod para obter seu valor equivalente em um contexto de doze horas:

8 horas + 9 = 17 horas
17 mod 12 = 5

17 mod 12 retorna 5. Isso significa que nove horas após as 8:00 da manhã é 5:00 da tarde. Você determinou isso ao pegar o número 17 e aplicá-lo a um mod 12.

Python Modulo: Usando o operador %

Vamos agora ver como usar o operador de módulo Python em diferentes tipos numéricos e entender como o Python calcula o resultado de uma operação de módulo.

Usando o operador de módulo Python com inteiros

# Exemplo: usar o operador de módulo com inteiros
num1 = 10
num2 = 3
resultado = num1 % num2
print(resultado) # Output: 1

Neste exemplo, temos dois números inteiros, num1 e num2. Usamos o operador de módulo (%) para calcular o resto da divisão de num1 por num2. O resultado é armazenado na variável resultado e, em seguida, imprime 1.

Usando o operador de módulo Python com ponto flutuante

# Exemplo: usar o operador de módulo com ponto flutuante
num1 = 10.5
num2 = 0.75
resultado = num1 % num2
print(resultado) # Output: 0.0

Neste exemplo, temos dois números de ponto flutuante, num1 e num2. Mais uma vez, usamos o operador de módulo para calcular o resto da divisão de num1 por num2. Dessa vez, como o resultado é um número de ponto flutuante, o resultado será 0.0.

Usando o operador de módulo Python com um operando negativo

# Exemplo: usando o operador de módulo com um operando negativo
num1 = 10
num2 = -3
resultado = num1 % num2
print(resultado) # Output: -2

Neste exemplo, temos um número negativo, num2. Usamos o operador de módulo para calcular o resto da divisão de num1 por num2. O resultado é armazenado na variável resultado e, em seguida, imprime -2.

Usando o operador de módulo Python com a função divmod()

# Exemplo: usando o operador de módulo com a função divmod()
num1 = 10
num2 = 3
quociente, resto = divmod(num1, num2)
print(quociente) # Output: 3
print(resto) # Output: 1

Neste exemplo, usamos a função built-in divmod() para calcular o quociente e o resto da divisão de num1 por num2. Em seguida, usamos as variáveis ​​quociente e resto para armazenar os resultados e, em seguida, imprimimos cada um deles separadamente.

Precedência do operador de módulo Python

# Exemplo: precedência do operador de módulo
resultado = 8 % 3 * 2
print(resultado) # Output: 2

Neste exemplo, temos uma expressão que usa o operador de módulo juntamente com o operador de multiplicação. O Python segue a precedência de operadores matemáticos convencionais, em que a multiplicação tem precedência sobre o módulo. Portanto, a expressão é avaliada primeiro como 8 % 3, que retorna 2, e em seguida, é multiplicada por 2, resultando em 4.

Python Modulo: Usos Avançados

Vamos agora ver alguns usos avançados do operador de módulo Python.

Usando o operador de módulo Python com a classe decimal.Decimal

# Exemplo: usando o operador de módulo com a classe decimal.Decimal
from decimal import Decimal
num1 = Decimal('10.5')
num2 = Decimal('0.75')
resultado = num1 % num2
print(resultado) # Output: Decimal('0.0')

Neste exemplo, estamos usando a biblioteca decimal e a classe Decimal para trabalhar com números decimais de alta precisão. Usamos o operador de módulo para calcular o resto da divisão de num1 por num2, ambos representados como objetos Decimal. O resultado também é um objeto Decimal.

Usando o operador de módulo Python com classes personalizadas

# Exemplo: usando o operador de módulo com classes personalizadas
class Numero:
def __init__(self, valor):
self.valor = valor
def __mod__(self, other):
return self.valor % other.valor
num1 = Numero(10)
num2 = Numero(3)
resultado = num1 % num2
print(resultado) # Output: 1

Neste exemplo, estamos criando uma classe personalizada chamada Numero, que possui um atributo valor e uma implementação personalizada do método __mod__() para tratar o operador de módulo. Ao calcular o operador de módulo entre dois objetos Numero, ele retorna a operação módulo dos seus valores correspondentes.

Conclusão

O operador de módulo (%) no Python pode ser extremamente útil para realizar várias operações, como verificar se um número é par ou ímpar, executar código em intervalos específicos em um loop, criar iterações cíclicas, converter unidades, determinar se um número é um número primo e implementar cifras. Além disso, o operador de módulo pode ser usado com tipos numéricos personalizados e objetos da classe Decimal para oferecer ainda mais flexibilidade.

Agora que você entendeu como usar o operador de módulo no Python, você está pronto para aplicá-lo em seus próprios projetos e solucionar problemas do mundo real.

[Share](https://twitter.com/intent/tweet/?text=Confira este tutorial de %23Python: Python%20Modulo%20na%20Prática:%20Como%20Usar%20o%20%25%20Operador

Reportar erro Editar esta página