Maison  >  Article  >  développement back-end  >  Le module décimal python

Le module décimal python

Mary-Kate Olsen
Mary-Kate Olsenoriginal
2024-09-26 07:25:02983parcourir

El módulo decimal de python

Les langages de programmation disposent de différents types de données pour gérer les informations numériques. Le type entier (int), réel (float) et python en prend en charge d'autres tels que les fractions et les complexes.

Aujourd'hui, cependant, je veux parler du type décimal. Le float ou virgule flottante présente plusieurs problèmes de précision qui ne peuvent être tolérés dans certains types d'applications comme par exemple celles liées à la finance.

Regardons un cas très simple :

from decimal import Decimal

1.0 == 0.999999999999999999  # True
Decimal("1.0") == Decimal("0.999999999999999999") # False

En étendant la classe décimale, il existe le module py-money qui ajoute une devise telle que l'USD ou le COP aux nombres, permettant aux applications qui l'exigent d'avoir une précision aussi élevée que souhaitée.

Bien sûr, il n'est pas possible d'avoir une précision infinie sur un ordinateur. Cependant, le module décimal peut être réglé avec une précision aussi élevée que nécessaire :

print(getcontext().prec)  # outpus 28 by default

J'ai pas mal utilisé le module décimal ainsi que la bibliothèque py-money à une époque où je travaillais sur une application financière. Il est correctement pris en charge par Django et d'autres frameworks.

Ce qui précède est le contenu détaillé de. pour plus d'informations, suivez d'autres articles connexes sur le site Web de PHP en chinois!

Déclaration:
Le contenu de cet article est volontairement contribué par les internautes et les droits d'auteur appartiennent à l'auteur original. Ce site n'assume aucune responsabilité légale correspondante. Si vous trouvez un contenu suspecté de plagiat ou de contrefaçon, veuillez contacter admin@php.cn