12k
All articles

O Que Significa `//` em Python? (Com Exemplos)

O operador de barra dupla em Python realiza divisão inteira, arredondando resultados para baixo ao inteiro mais próximo, com aplicações em floats, loops e paginação.

OpenReplay Team
OpenReplay Team
O Que Significa `//` em Python? (Com Exemplos)

Em Python, // é o operador de divisão inteira (floor division). Ele divide dois números e arredonda o resultado para baixo até o número inteiro mais próximo.

Por exemplo:

print(10 // 3)  # Saída: 3
print(-10 // 3) # Saída: -4

Principais Pontos

  • // realiza divisão inteira, ou seja, arredonda para baixo o resultado.
  • Funciona com números inteiros e números de ponto flutuante.
  • Sempre arredonda em direção ao infinito negativo (-∞).

Entendendo a Divisão Inteira (//)

O operador // divide dois números, mas em vez de retornar um resultado em ponto flutuante, ele trunca (arredonda para baixo) para o inteiro mais próximo.

Exemplo:

print(7 // 2)   # Saída: 3 (em vez de 3.5)
print(-7 // 2)  # Saída: -4 (arredonda em direção a -∞)

Como o // Lida com Números Decimais?

Mesmo se um dos operandos for um número decimal, o resultado permanece arredondado para baixo, mas em formato decimal:

print(7.0 // 2)   # Saída: 3.0
print(-7.5 // 2)  # Saída: -4.0

Diferença Entre / e //

Operador Descrição Exemplo / Divisão normal (retorna decimal) 5 / 2 = 2.5 // Divisão inteira (arredonda para baixo) 5 // 2 = 2

Quando Usar //?

  • Quando você precisa apenas de números inteiros (ex.: contagem de itens).
  • Evitando erros de precisão com decimais (ex.: indexação de arrays).
  • Garantindo resultados inteiros em loops.

Exemplo: Usando // para paginação:

items_por_pagina = 10
total_items = 95

paginas = total_items // items_por_pagina
print(paginas)  # Saída: 9

Perguntas Frequentes

O `//` sempre retorna um número inteiro?

Não, se um dos operandos for decimal, o resultado será decimal.

Por que `-10 // 3` retorna `-4` em vez de `-3`?

Porque `//` arredonda em direção ao infinito negativo (`-∞`).

O `//` é o mesmo que `math.floor(a / b)`?

Sim, `a // b` é equivalente a `math.floor(a / b)`.

Conclusão

O operador // em Python realiza divisão inteira, arredondando o resultado para baixo até o número inteiro mais próximo. É útil quando se trabalha com matemática de inteiros, loops e paginação.

Listen to your bugs 🧘, with OpenReplay

See how users use your app and resolve issues fast.
Loved by thousands of developers

We use cookies to improve your experience. By using our site, you accept cookies.