Pergunta

Eu estava olhando para o rácio douradofórmula Para encontrar o NTH Fibonacci número, e isso me deixou curioso.

Eu sei que Python lida com inteiros arbitrariamente grandes, mas que tipo de precisão você recebe com decimais?É apenas direto em cima de um duplo ou algo, ou usa uma implementação modificada mais precisa também?(Obviamente não com precisão arbitrária. D)

Foi útil?

Solução

Python flutuadores Use o tipo duplo do compilador C subjacente.Como diz Bwmat, isso é geralmente IEEE-754 dupla precisão.

No entanto, se você precisar de mais precisão do que você pode usar o Python Módulo decimal que foi adicionado em Python 2.4.

python 2.6 também adicionou o módulo de fracção Qual pode ser um ajuste melhor para algunsproblemas.

ambos vão ser mais lentos do que usar o tipo de float, mas esse é o preço para mais precisão.

Outras dicas

Quase todos os plataformas mapa Python flutua para IEEE-754 "Double Precision".

http://docs.python.org/tutorial/floatingpoint.html# Representation-Erro

Há também o Módulo decimal Para a matemática de ponto flutuante de precisão arbitrária

Licenciado em: CC-BY-SA com atribuição
Não afiliado a StackOverflow
scroll top