Operações Aritméticas - Python
O Python suporta todas as operações aritméticas básicas:
+
Soma de dois números:
print(6 + 2) # 8
-
Subtração de dois números:
print(6 - 2) # 4
*
Multiplicação de dois números:
print(6 * 2) # 12
/
Divisão de dois números:
print(6 / 2) # 3.0
//
Divisão inteira de dois números:
print(7 / 2) # 3.5 print(7 // 2) # 3
Essa operação retorna o resultado inteiro da divisão, descartando a parte decimal.
**
Exponenciação:
print(6 ** 2) # Eleva o número 6 ao quadrado. Resultado: 36
%
Resto da divisão:
print(7 % 2) # Resto da divisão de 7 por 2. Resultado: 1
Neste caso, o número mais próximo de 7 que é divisível por 2 é 6. Portanto, o resto da divisão é 7 - 6 = 1.
Ao usar várias operações aritméticas em sequência, elas são executadas de acordo com a sua prioridade. Primeiro, são realizadas as operações com maior prioridade. Operadores com a mesma precedência são avaliados da esquerda para a direita, exceto no caso do operador de exponenciação, que é avaliado da direita para a esquerda. A ordem de prioridade das operações é listada abaixo:
Operações | Direção |
---|---|
** | Da direita para a esquerda |
*, /, //, % | Da esquerda para a direita |
+, - | Da esquerda para a direita |
Vamos analisar o seguinte exemplo:
number = 3 + 4 * 5 ** 2 + 7
print(number) # 110
Neste caso, a exponenciação (5 ** 2) é realizada primeiro, pois tem maior prioridade, resultando em 25. Depois, esse valor é multiplicado por 4 (25 * 4), seguido da soma (3 + 100) e finalmente a última soma (103 + 7).
Para alterar a ordem das operações, podemos usar parênteses:
number = (3 + 4) * (5 ** 2 + 7)
print(number) # 224
Vale ressaltar que tanto números inteiros quanto números com ponto flutuante podem ser usados nas operações aritméticas. Se um número inteiro (int
float
float
Operações Aritméticas com Atribuição
Algumas operações permitem atribuir o resultado diretamente ao primeiro operando:
Atribui o resultado da soma+=
Atribui o resultado da subtração-=
Atribui o resultado da multiplicação*=
Atribui o resultado da divisão/=
Atribui o resultado da divisão inteira//=
Atribui o resultado da exponenciação**=
Atribui o resto da divisão%=
Exemplos:
number = 10
number += 5
print(number) # 15
number -= 3
print(number) # 12
number *= 4
print(number) # 48
Arredondamento e a Função round
Ao trabalhar com números do tipo float
first_number = 2.0001
second_number = 5
third_number = first_number / second_number
print(third_number) # 0.40002000000000004
Esperávamos o valor 0.40002, mas aparece uma pequena diferença no final. Outro exemplo:
print(2.0001 + 0.1) # 2.1001000000000003
Nesse caso, podemos usar a função round()
first_number = 2.0001
second_number = 0.1
third_number = first_number + second_number
print(round(third_number)) # 2
A função round()
A função também pode receber um segundo argumento, que indica o número de casas decimais:
first_number = 2.0001
second_number = 0.1
third_number = first_number + second_number
print(round(third_number, 4)) # 2.1001
Neste caso, o valor third_number
Exemplos de arredondamento:
# arredondamento para o número inteiro mais próximo
print(round(2.49)) # 2
print(round(2.51)) # 3
Se a parte decimal estiver igualmente distante de dois números inteiros, o arredondamento é feito para o número par mais próximo:
print(round(2.5)) # 2
print(round(3.5)) # 4
Arredondamento para duas casas decimais:
print(round(2.554, 2)) # 2.55
print(round(2.5551, 2)) # 2.56
print(round(2.499, 2)) # 2.5
É importante notar que a função round()
print(round(2.545, 2)) # 2.54
print(round(2.555, 2)) # 2.56
print(round(2.575, 2)) # 2.58
Para mais informações sobre essas questões, consulte a documentação oficial do Python.