Bonjour, j'ai un nombre avec 10 chiffres aprés la virgule, j'ai cru voir que le module decimal fait cela, pouvez vous me montrer comment il marche?
merci d'avance!
Bonjour, j'ai un nombre avec 10 chiffres aprés la virgule, j'ai cru voir que le module decimal fait cela, pouvez vous me montrer comment il marche?
merci d'avance!
tu peut donner, un exemples
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9 >>> 1/7 0 >>> 1/7. 0.14285714285714285 >>> int(1/7) 0 >>> int(1/7.) 0 >>>
Salut
Sinon tu peux te creer ta propre fonction
Je ne sais pas s'il existe des fonctions toutes faites, mais celle là est tellement facile à faire.
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8 def arrondi(mon_float,nb_apres_virgule): multiplicateur = power(10,nb_apres_virgule) nombre = mon_float*multiplicateur return nombre/mulitplicateur # exemple d'utilisation > arrondi(10.25666998,3) 10.256
Peut être dans le module math ?
Cordialement
See ++[/code]
Sortie:
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 from decimal import Decimal, getcontext getcontext().prec = 5 #précision voulue nb1 = 1. nb2 = 6. n = Decimal(str(nb1)) / Decimal(str(nb2)) print n
0.16667
Ce ne serait pas plus simple de faire :Envoyé par oiffrig
A +
Code : Sélectionner tout - Visualiser dans une fenêtre à part
1
2
3
4
5
6
7
8
9
10 from decimal import Decimal, getcontext getcontext().prec = 5 #précision voulue nb1 = 1. nb2 = 6. n = Decimal(str(nb1/nb2)) print n
See++
Parfois python gère mal les précisions de ses float, et si on utilise beaucoup de décimales, au moins avec Decimal on ne les perd pas et elles sont exactes
Partager