Tutoriel Python - Nombres et conversion
- Type de données numériques Python
- Conversion des types de nombres en Python
- Nombres fractionnaires en Python
Dans cette section, vous apprendrez le type de données des nombres en programmation Python et les opérations mathématiques que vous pouvez effectuer sur ces nombres. De plus, vous apprendrez comment convertir d’un type de données à un autre.
Type de données numériques Python
Le type de données de nombres dans l’include Python:
- Entiers
- Numéros à virgule flottante
- Numéros complexes
Les nombres entiers n’ont pas de partie fractionnaire/décimale.
Les nombres à virgule flottante contiennent une partie décimale.
Les nombres complexes ont une partie réelle et une partie imaginaire. Les nombres complexes sont de la forme x + yj
, où x
est la partie réelle et yj
est la partie imaginaire.
La fonction type()
est utilisée pour obtenir le type de données d’une variable ou plus généralement, d’un objet. La fonction isinstance()
est utilisée pour vérifier si la variable appartient à une classe particulière ou non.
x = 3
print("type of", x, "is", type(x))
x = 3.23
print("type of", x, "is", type(x))
x = 3 + 3j
print("is", x, "a complex number:", isinstance(x, complex))
Résultat:
type of 3 is <class 'int'>
type of 3.23 is <class 'float'>
is (3+3j) a complex number: True
Les nombres entiers peuvent être de n’importe quelle longueur mais les nombres à virgule flottante ne doivent pas dépasser 15 décimales.
Les nombres entiers peuvent aussi être représentés au format binaire (base 2), hexadécimal (base 16) et octal (base 8). Ceci peut être fait en utilisant des préfixes. Consultez le tableau ci-dessous:
Système de nombres | Préfixes |
---|---|
Binaire | 0b ou 0B |
Octal | 0o ou 0O |
Hexadécimal | 0x ou 0X |
Exemple:
>>> print(0b110)
6
>>> print(0xFA)
250
>>> print(0o12)
10
Conversion des types de nombres en Python
Conversion de type implicite
Si vous ajoutez un nombre de type float
et un autre nombre de type int
, le type du résultat sera float
. Ici, int
est converti en float
implicitement.
>>> 2 + 3.0
5.0
Ici, 2 est un entier qui est converti en float implicitement et vous avez 2.0.
Cette conversion de type implicite est aussi appelée coercition.
Conversion de type explicite
Vous pouvez aussi faire une conversion explicite de type de données numériques en utilisant des fonctions comme int()
, float()
, str()
, etc.
>>> x = 8
>>> print("Value of x = ", int(x))
Value of x = 8
>>> print("Converted Value of x = ", float(x))
Converted Value of x = 8.0
Si vous voulez convertir une valeur float
en une valeur int
alors la partie décimale sera tronquée.
Nombres fractionnaires en Python
Un module nommé fractions
est utilisé pour effectuer des opérations qui impliquent des nombres fractionnaires. Le module fractions
peut représenter un nombre fractionnaire comme numérateur/dénominateur
.
import fractions
print(fractions.Fraction(0.5))
1 / 2
La fonction Fraction
du module fractions
convertira le nombre décimal en fractions et vous pourrez alors effectuer des opérations mathématiques sur ces fractions:
print(Fraction(0.5) + Fraction(1.5))
print(Fraction(0.5) * Fraction(1.5))
print(Fraction(0.5) / Fraction(1.5))
Résultat:
2
3 / 4
1 / 3
Founder of DelftStack.com. Jinku has worked in the robotics and automotive industries for over 8 years. He sharpened his coding skills when he needed to do the automatic testing, data collection from remote servers and report creation from the endurance test. He is from an electrical/electronics engineering background but has expanded his interest to embedded electronics, embedded programming and front-/back-end programming.
LinkedIn Facebook