"Se um trabalhador quiser fazer bem o seu trabalho, ele deve primeiro afiar suas ferramentas." - Confúcio, "Os Analectos de Confúcio. Lu Linggong"
Primeira página > Programação > Como arredondar números para uma base específica em Python (não apenas 5)?

Como arredondar números para uma base específica em Python (não apenas 5)?

Publicado em 2024-11-02
Navegar:345

How to Round Numbers to a Specific Base in Python (Not Just 5)?

Arredonde para 5 (ou outro número) em Python

Em Python, a função round integrada arredonda para o número inteiro mais próximo. No entanto, é possível criar uma função personalizada que arredonda para um número específico (como 5) usando a seguinte abordagem:

Python 3

def myround(x, base=5):
    return base * round(x/base)

Esta função funciona primeiro dividindo o número de entrada x pelo número base (5 por padrão). Isso garante que o número resultante seja um número inteiro, arredondado corretamente. A função então multiplica o número arredondado pelo número base para obter o resultado arredondado.

Python 2

No Python 2, a função float() deve ser usada para garantir que a operação de divisão (/) execute divisão de ponto flutuante. Além disso, uma conversão final para int é necessária porque round() retorna um valor de ponto flutuante em Python 2.

def myround(x, base=5):
    return int(base * round(float(x)/base))

Ao fornecer um parâmetro base com um valor padrão de 5, a função se torna mais genérica, permitindo que ela seja arredondada para qualquer número desejado.

Esta função personalizada pode ser usada para arredondar números para qualquer número especificado, não apenas 5. Por exemplo, o código a seguir arredonda números para o 10 mais próximo:

myround(23, 10)  # Output: 20
myround(47, 10)  # Output: 50
Declaração de lançamento Este artigo foi reimpresso em: 1729212915 Se houver alguma violação, entre em contato com [email protected] para excluí-lo
Tutorial mais recente Mais>

Isenção de responsabilidade: Todos os recursos fornecidos são parcialmente provenientes da Internet. Se houver qualquer violação de seus direitos autorais ou outros direitos e interesses, explique os motivos detalhados e forneça prova de direitos autorais ou direitos e interesses e envie-a para o e-mail: [email protected]. Nós cuidaremos disso para você o mais rápido possível.

Copyright© 2022 湘ICP备2022001581号-3