Exemples de comment arrondir un nombre réel en python
Table des matières
- Arrondir un nombre réel
- Arrondir un nombre réel en gardant 1 décimale
- Arrondir un nombre réel en gardant 2 décimales
- Convertir un nombre réel en entier
- Arrondir une matrice de nombres réels
- Arrondir un nombre complexe
- Utiliser format pour incorporer un nombre dans une chaîne de caractères
- Références
Arrondir un nombre réel
Pour arrondir un nombre réel il existe la fonction python round :
>>> round(3.1415)
3
Arrondir un nombre réel en gardant 1 décimale
>>> x = 1.4567
>>> round(x,1)
1.5
Arrondir un nombre réel en gardant 2 décimales
>>> x = 1.4567
>>> round(x,2)
1.46
Convertir un nombre réel en entier
>>> x = 3.1415
>>> x = int(x)
>>> x
3
>>> type(x)
<class 'int'>
Note: donne la même chose que la fonction round()
>>> x = round(3.1415)
>>> type(x)
<class 'int'>
>>> x
3
Arrondir une matrice de nombres réels
Pour arrondir les éléments d'une matrice, une solution est d'utiliser la fonction numpy around, exemple:
>>> import numpy as np
>>> a = np.array(([1.24,3.46,5.34]))
>>> a
array([1.24, 3.46, 5.34])
>>> np.around(a, decimals=1)
array([1.2, 3.5, 5.3])
Pour convertir une matrice de nombres réels en nombre entier il y a la fonction astype:
>>> import numpy as np
>>> a = np.array(([1,24,3.46,5.34]))
>>> a
array([ 1. , 24. , 3.46, 5.34])
>>> a.astype(int)
array([ 1, 24, 3, 5])
Arrondir un nombre complexe
>>> z = 2.14 + 3.47j
>>> round(z.real, 1) + round(z.imag, 1) * 1j
(2.1+3.5j)
Utiliser format pour incorporer un nombre dans une chaîne de caractères
Si l'objectif est d'arrondir un nombre réel pour ensuite l'insérer dans une chaîne de caractères, le plus simple est d'utiliser format()
>>> s = 'Pi value is {:06.2f}'.format(3.141592653589793)
>>> s
'Pi value is 003.14'
>>> s = 'Pi value is {:01.2f}'.format(3.141592653589793)
>>> s
'Pi value is 3.14'
Références
Liens | Site |
---|---|
round | Python Doc |
round() in Python doesn't seem to be rounding properly | stackoverflow |
How to convert 2D float numpy array to 2D int numpy array? | stackoverflow |
How to round up a complex number? | stackoverflow |
numpy.ndarray.astype | docs.scipy.org |
Using % and .format() for great good! | pyformat.info |