Introduction à l’arrondi en Python
L’arrondi des nombres est une opération courante en programmation, et Python ne fait pas exception à cette règle. Que vous travailliez avec des nombres entiers, des nombres à virgule flottante, ou même des tableaux de nombres, Python offre plusieurs façons d’arrondir vos valeurs.
En Python, l’arrondi peut être effectué de plusieurs façons, mais les plus courantes sont l’utilisation des fonctions intégrées round()
et numpy.around()
. Ces deux fonctions ont des comportements légèrement différents, ce qui peut conduire à des résultats différents selon la situation.
Dans cet article, nous allons explorer ces deux fonctions, comprendre leurs différences et apprendre à les utiliser efficacement pour arrondir des nombres et des tableaux de nombres en Python. Nous verrons également quelques pièges courants à éviter lors de l’arrondi des nombres en Python. Alors, commençons notre voyage dans le monde de l’arrondi en Python.
Présentation de la fonction round
La fonction round()
est une fonction intégrée de Python qui vous permet d’arrondir un nombre à un certain nombre de chiffres après la virgule. Sa syntaxe est la suivante :
round(nombre, ndigits)
Où :
– nombre
est le nombre que vous souhaitez arrondir.
– ndigits
(facultatif) est le nombre de chiffres après la virgule auxquels vous souhaitez arrondir le nombre. Si ndigits
est omis ou None
, le nombre est arrondi à l’entier le plus proche.
Voici quelques exemples d’utilisation de la fonction round()
:
print(round(3.14159)) # Affiche : 3
print(round(3.14159, 2)) # Affiche : 3.14
print(round(3.14159, 3)) # Affiche : 3.142
Comme vous pouvez le voir, la fonction round()
est très simple à utiliser. Cependant, il est important de noter que son comportement peut être un peu surprenant dans certains cas en raison de la façon dont Python arrondit les nombres à mi-chemin entre deux autres nombres. Nous aborderons ces cas plus en détail dans une section ultérieure de cet article.
Présentation de la fonction around
La fonction around()
est une fonction de la bibliothèque numpy
de Python, qui est largement utilisée pour le calcul scientifique. Elle vous permet d’arrondir un nombre ou un tableau de nombres à un certain nombre de chiffres après la virgule. Sa syntaxe est la suivante :
numpy.around(a, decimals=0, out=None)
Où :
– a
est le nombre ou le tableau de nombres que vous souhaitez arrondir.
– decimals
(facultatif) est le nombre de chiffres après la virgule auxquels vous souhaitez arrondir le nombre. Par défaut, decimals
est 0, ce qui signifie que le nombre est arrondi à l’entier le plus proche.
– out
(facultatif) est un tableau dans lequel placer le résultat.
Voici quelques exemples d’utilisation de la fonction around()
:
import numpy as np
print(np.around(3.14159)) # Affiche : 3.0
print(np.around(3.14159, 2)) # Affiche : 3.14
print(np.around(3.14159, 3)) # Affiche : 3.142
# Avec un tableau
arr = np.array([3.14159, 2.71828, 1.41421])
print(np.around(arr, 2)) # Affiche : [3.14 2.72 1.41]
Comme vous pouvez le voir, la fonction around()
est très utile pour arrondir des nombres et des tableaux de nombres en Python. Dans les sections suivantes, nous allons comparer round()
et around()
, et discuter de leurs différences et de leurs utilisations. Alors, restez avec nous pour en savoir plus sur l’arrondi en Python.
Comparaison entre round et around
Bien que les fonctions round()
et around()
soient toutes deux utilisées pour arrondir des nombres en Python, il existe quelques différences clés entre elles.
- Type de retour : La fonction
round()
retourne un nombre entier si le nombre de chiffres après la virgule (ndigits
) est omis ouNone
, tandis quearound()
retourne toujours un nombre à virgule flottante, même sidecimals
est 0.
print(round(3.5)) # Affiche : 4
print(np.around(3.5)) # Affiche : 4.0
- Arrondi à mi-chemin : Pour les nombres exactement à mi-chemin entre deux autres nombres,
round()
arrondit à l’entier pair le plus proche, tandis quearound()
arrondit toujours à l’entier supérieur.
print(round(2.5)) # Affiche : 2
print(np.around(2.5)) # Affiche : 3.0
- Arrondi des tableaux :
round()
peut arrondir des nombres individuels, mais pas des tableaux de nombres. Pour arrondir des tableaux de nombres, vous devez utiliseraround()
.
arr = np.array([3.14159, 2.71828, 1.41421])
print(np.around(arr, 2)) # Affiche : [3.14 2.72 1.41]
En résumé, bien que round()
et around()
soient similaires, leurs différences peuvent avoir un impact significatif sur vos calculs en Python. Il est donc important de comprendre ces différences et de choisir la fonction appropriée en fonction de vos besoins.
Exemples d’utilisation de round et around
Voici quelques exemples qui illustrent comment utiliser les fonctions round()
et around()
en Python.
Utilisation de round
# Arrondir à l'entier le plus proche
print(round(3.5)) # Affiche : 4
# Arrondir à un chiffre après la virgule
print(round(3.14159, 1)) # Affiche : 3.1
# Arrondir à deux chiffres après la virgule
print(round(3.14159, 2)) # Affiche : 3.14
Utilisation de around
import numpy as np
# Arrondir à l'entier le plus proche
print(np.around(3.5)) # Affiche : 4.0
# Arrondir à un chiffre après la virgule
print(np.around(3.14159, 1)) # Affiche : 3.1
# Arrondir à deux chiffres après la virgule
print(np.around(3.14159, 2)) # Affiche : 3.14
# Arrondir un tableau de nombres
arr = np.array([3.14159, 2.71828, 1.41421])
print(np.around(arr, 2)) # Affiche : [3.14 2.72 1.41]
Ces exemples montrent comment utiliser round()
et around()
pour arrondir des nombres en Python. Comme vous pouvez le voir, around()
est particulièrement utile lorsque vous travaillez avec des tableaux de nombres.
Pièges courants et comment les éviter
Lors de l’utilisation des fonctions d’arrondi en Python, il y a quelques pièges courants que vous devez connaître et éviter.
- Arrondi à mi-chemin : Comme mentionné précédemment, la fonction
round()
de Python arrondit à l’entier pair le plus proche pour les nombres exactement à mi-chemin entre deux autres nombres. C’est ce qu’on appelle l’arrondi à la moitié pair, et c’est différent de ce que beaucoup de gens attendent. Pour éviter ce piège, assurez-vous de comprendre commentround()
fonctionne et utiliseznumpy.around()
si vous voulez un comportement d’arrondi différent.
print(round(2.5)) # Affiche : 2
print(np.around(2.5)) # Affiche : 3.0
- Précision des nombres à virgule flottante : Les nombres à virgule flottante en Python (et dans la plupart des autres langages de programmation) ne sont pas toujours exacts, et cela peut conduire à des résultats d’arrondi inattendus. Pour éviter ce piège, vous pouvez utiliser la bibliothèque
decimal
de Python, qui offre une précision décimale exacte.
from decimal import Decimal
# Arrondir un nombre décimal
print(round(Decimal('2.675'), 2)) # Affiche : 2.68
- Arrondi des tableaux avec round : La fonction
round()
de Python ne peut pas arrondir des tableaux de nombres. Si vous essayez de le faire, vous obtiendrez une erreur. Pour arrondir des tableaux de nombres, vous devez utilisernumpy.around()
.
import numpy as np
# Essayer d'arrondir un tableau avec round entraîne une erreur
arr = np.array([3.14159, 2.71828, 1.41421])
print(round(arr, 2)) # Erreur
# Utiliser around pour arrondir un tableau
print(np.around(arr, 2)) # Affiche : [3.14 2.72 1.41]
En gardant ces pièges à l’esprit et en sachant comment les éviter, vous pouvez utiliser les fonctions d’arrondi en Python de manière plus efficace et précise.
Conclusion
L’arrondi des nombres est une opération courante en programmation et Python offre plusieurs façons de le faire. Dans cet article, nous avons exploré les fonctions round()
et around()
, qui sont les plus couramment utilisées pour arrondir des nombres en Python.
Nous avons vu que bien que ces deux fonctions soient similaires, elles ont des comportements légèrement différents qui peuvent avoir un impact significatif sur vos calculs. Par conséquent, il est important de comprendre ces différences et de choisir la fonction appropriée en fonction de vos besoins.
Enfin, nous avons discuté de quelques pièges courants lors de l’utilisation des fonctions d’arrondi en Python et comment les éviter. En gardant ces points à l’esprit, vous pouvez utiliser les fonctions d’arrondi en Python de manière plus efficace et précise.
Nous espérons que cet article vous a aidé à comprendre l’arrondi en Python et comment l’utiliser efficacement dans vos projets. Bonne programmation !