La fonction round() de python se paierait une mauvaise note en physique, et même en maths : si on veut trois décimales, il faut 5.000. Or la fonction round de python donne 5.0. Avant d'écrire une fonction qui remédie, j'aimerais savoir s'il n'y a pas une solution déjà existant. J'ai regardé la doc : round() ne prend qu'un argument, le nombre de décimales. Si j'ai bien compris, pas d'options. Quelqu'un a-t-il la réponse ?
Quelle différence entre 5.0 et 5.000 me direz-vous. La voici : 5.0 est bien moins précis que 5.000. 5.0 appartient à [4.5, 5.5[, tandis que 5.000 appartient à [4.995, 5.005[
Sinon, j'ai découvert ça, et je partage : différence entre int() et floor(). int(), ce n'est pas la fonction partie entière généralement notée E en maths. La vraie partie entière, c'est floor. La différence concerne les nombres négatifs. Définition de E(x) : le plus petit entier inférieur à x . Or, par exemple, le plus petit entier inférieur à -4,3, c'est -5 !
On a bien floor(-4.3) = -5. Mais int(-4,3) = -4.
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard) La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)
Sinon, j'ai découvert ça, et je partage : différence entre int() et floor(). int(), ce n'est pas la fonction partie entière généralement notée E en maths. La vraie partie entière, c'est floor. La différence concerne les nombres négatifs. Définition de E(x) : le plus petit entier inférieur à x . Or, par exemple, le plus petit entier inférieur à -4,3, c'est -5 !
On a bien floor(-4.3) = -5. Mais int(-4,3) = -4.
Absolument, la fonction floor est la vraie fonction partie entière mathématiques. Tu obtiens plus ou moins le même résultat sans rien importer en faisant une division entière par 1 :
>>> -4.3//1
-5.0
>>>
Une nuance est qu'ici le type de retour est float alors que pour floor c'est int. Il y a aussi des différences vis à vis des infinis.
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Fonction round à améliorer ?
× Après avoir cliqué sur "Répondre" vous serez invité à vous connecter pour que votre message soit publié.
× Attention, ce sujet est très ancien. Le déterrer n'est pas forcément approprié. Nous te conseillons de créer un nouveau sujet pour poser ta question.
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Celui qui trouve sans chercher est celui qui a longtemps cherché sans trouver.(Bachelard)
La connaissance s'acquiert par l'expérience, tout le reste n'est que de l'information.(Einstein)
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.
Découverte Python Doc Tkinter Les chaînes de caractères
S'il n'y a pas de solution, c'est qu'il n'y a pas de problème.