Números e Operadores Matemáticos Básicos
O Python tem dois tipos numéricos que você vai usar o tempo todo: int para números inteiros, float para qualquer coisa com ponto decimal. A maioria dos operadores aritméticos funciona exatamente como uma calculadora, mas dois deles são específicos do Python e vale a pena conhecer antes de esbarrar neles por acidente.
a = 10 b = 3 print(a + b) print(a - b) print(a * b) print(a / b) print(a // b) print(a % b) print(a ** b)
13 7 30 3.3333333333333335 3 1 1000
- + - * funcionam exatamente como você esperaria
- / é a divisão, e sempre retorna um float, mesmo que o resultado seja um número inteiro
- // é a divisão inteira (floor division) — divide e depois arredonda para baixo até o inteiro mais próximo
- % é o operador módulo — te dá o resto da divisão
- ** é a exponenciação — a ** b significa a elevado a b
/ vs // — a que costuma confundir as pessoas
A divisão comum (/) sempre devolve um float, mesmo quando os dois números são inteiros. A divisão inteira (//) divide e depois descarta tudo depois do ponto decimal — ela não arredonda para o inteiro mais próximo, sempre arredonda para baixo.
Repare na última linha: a divisão inteira sobre um float ainda retorna um float (2.0, não 2) — o Python mantém o tipo consistente com o que você deu a ele. Misturar um int e um float em qualquer operação sempre produz um float.
Arredondamento
round() arredonda um número para a quantidade de casas decimais que você especificar — ou para o inteiro mais próximo se você omitir esse argumento.
A seguir: strings — como o texto realmente funciona em Python, e os métodos que você vai usar o tempo todo.
Exercício de Prática
Dado a = 17 e b = 5, imprima o resultado de a // b, e depois imprima o resultado de a % b.