Pular para o conteúdo

A primeira escola especializada em tecnologia do Alto Solimões, com corpo técnico formado na área.

Módulo 2: Fundamentos da Linguagem

Operadores Aritméticos e Relacionais

Cálculos e comparações em Python

Para que servem operadores?

Python tem operadores para fazer contas e para comparar valores. Os aritméticos resolvem cálculos matemáticos. Os relacionais comparam dois valores e devolvem True ou False.

Saber a diferença entre / e //, entender o % e usar comparacoes encadeadas vai facilitar muito sua vida nos próximos programas.

Operadores aritméticos

Os básicos você já conhece. A novidade são // (divisão inteira), % (resto) e ** (potência):

print(15 + 27)   # → 42
print(100 - 37) # → 63
print(6 * 7) # → 42
OperadorO que fazExemploResultado
+Soma15 + 2742
-Subtração100 - 3763
*Multiplicação6 * 742
/Divisão (float)7 / 23.5
//Divisão inteira7 // 23
%Resto (módulo)10 % 31
**Potência2 ** 38

/ vs // -- divisão real e inteira

Essa é uma das maiores fontes de confusao. A barra simples sempre retorna float. A barra dupla corta as casas decimais:

# / sempre retorna float
print(10 / 2) # → 5.0
print(7 / 2) # → 3.5

# // corta as casas decimais (divisão inteira)
print(10 // 2) # → 5
print(7 // 2) # → 3

% -- resto da divisão

O operador % (módulo) retorna o resto da divisão. Super útil para saber se um número é par ou impar:

print(10 % 3)    # → 1
print(15 % 5) # → 0

# Truque: par ou impar
número = 42
if número % 2 == 0:
print(f"{número} é par") # → 42 é par
else:
print(f"{número} é ímpar")

** -- potência e raiz

** e a potenciação. É também serve para raiz quadrada (potência de 0.5):

print(2 ** 3)    # → 8
print(9 ** 0.5) # → 3.0 (raiz quadrada)
print(2 ** 10) # → 1024

Operadores relacionais

Relacionais comparam dois valores e devolvem True ou False:

idade = 18
print(idade == 18) # → True
print(idade != 18) # → False
print(idade > 17) # → True
print(idade < 21) # → True
print(idade >= 18) # → True
print(idade <= 17) # → False
OperadorSignificadoExemploResultado
==Igual a5 == 5True
!=Diferente de5 != 3True
>Maior que10 > 5True
<Menor que3 < 7True
>=Maior ou igual5 >= 5True
<=Menor ou igual4 <= 3False

Comparacoes encadeadas

Isso e exclusivo do Python! Você pode encadear comparacoes de forma natural:

x = 15
print(10 <= x <= 20) # → True
print(1 <= x <= 10) # → False

# Strings comparam pela ordem alfabetica
print("abc" == "abc") # → True
print("abc" == "ABC") # → False
print("a" < "b") # → True

Atribuicao composta

Atalhos para modificar o valor de uma variável:

x = 10
x += 5 # x = x + 5 → 15
x -= 3 # x = x - 3 → 12
x *= 2 # x = x * 2 → 24
x //= 5 # x = x // 5 → 4
x **= 3 # x = x ** 3 → 64
x %= 10 # x = x % 10 → 4
print(x) # → 4

Ordem das operações

Mesma regra da matemática. Parenteses sempre ganham:

print(2 + 3 * 4)    # → 14 (multiplicação primeiro)
print((2 + 3) * 4) # → 20 (parênteses primeiro)

Exemplo prático: calculadora de IMC

peso = float(input("Peso (kg): "))
altura = float(input("Altura (m): "))

imc = peso / altura ** 2

print(f"Seu IMC: {imc:.1f}")
# Peso (kg): 70
# Altura (m): 1.75
# → Seu IMC: 22.9

Aqui ** tem prioridade sobre /, então altura ** 2 é calculado primeiro. Depois o peso e dividido pelo resultado.

Referências

Testa o que você leu

4 perguntas sobre esta aula. Errar aqui não custa nada - a explicação vem junto da correção.

Pergunta 1 de 4
Qual é a diferença entre `/` e `//` em Python?