Rodada Python ()

A função round () retorna um número de ponto flutuante arredondado para o número especificado de decimais.

A sintaxe da round()função é:

 rodada (número, ndigits)

Parâmetros round ()

A round()função tem dois parâmetros:

  • número - o número a ser arredondado
  • ndigits (opcional) - número até o qual o número fornecido é arredondado; o padrão é 0

Valor de retorno do round ()

  • Se ndigitsnão for fornecido, round()retorna o número inteiro mais próximo ao número fornecido.
  • Se ndigitsfor fornecido, round()retorna o número arredondado para os ndigitsdígitos.

Exemplo 1: Como round () funciona em Python?

 # for integers print(round(10)) # for floating point print(round(10.7)) # even choice print(round(5.5))

Resultado

 10 11 6

Exemplo 2: arredondar um número para o número fornecido de casas decimais

 print(round(2.665, 2)) print(round(2.675, 2))

Resultado

 2,67 2,67

Nota : O comportamento de round()for floats pode ser surpreendente. O aviso round(2.675, 2)dá em 2.67vez do esperado 2.68. Isso não é um bug: é o resultado do fato de que a maioria das frações decimais não pode ser representada exatamente como um float.

Quando o decimal 2.675é convertido em um número de ponto flutuante binário, ele é novamente substituído por uma aproximação binária, cujo valor exato é:

 2.67499999999999982236431605997495353221893310546875

Devido a isso, ele foi arredondado para 2,67.

Se você estiver em uma situação em que essa precisão seja necessária, considere usar o decimalmódulo, que é projetado para aritmética de ponto flutuante:

 from decimal import Decimal # normal float num = 2.675 print(round(num, 2)) # using decimal.Decimal (passed float as string for precision) num = Decimal('2.675') print(round(num, 2))

Resultado

 2,67 2,68

Artigos interessantes...