Arredondamento de números

Python:
Arredondamento de números

Como Fazer:

Aqui está o essencial sobre arredondamento de números em Python:

# Arredondar um número para o inteiro mais próximo
print(round(8.67))  # Saída: 9

# Arredondar um número para um número especificado de casas decimais
print(round(8.67, 1))  # Saída: 8.7

# Números pares são arredondados para baixo e ímpares são arredondados para cima quando equidistantes
print(round(2.5))  # Saída: 2
print(round(3.5))  # Saída: 4

Aprofundando

Em Python, a função round() não está apenas cortando decimais. Historicamente, Python, assim como muitas outras linguagens, segue o “arredondamento pela metade até o par” ou “arredondamento do banqueiro”. Isso minimiza o erro cumulativo em somas ou médias, o que é importante em cálculos financeiros.

Para alternativas, você tem math.floor() e math.ceil() do módulo de matemática do Python, arrastando números para baixo ou para cima até o próximo número inteiro. Mas, se precisão é o que você procura, quantize() do módulo decimal permite especificar o comportamento de arredondamento.

Por baixo dos panos, round() lida com números de ponto flutuante binários. Como alguns decimais não podem ser expressos exatamente em binário, você pode se surpreender com coisas como round(2.675, 2) não se tornando 2.68 como esperado. Aí entram decimal ou fractions para alta precisão.

Veja Também