Les types d'expressions en Python
En Python, comme dans la plupart des langages de programmation, les expressions sont classées en fonction de leur type.
Les différents types d'expressions
Type int (integer)
Les expressions, comme $1 + 2$, dont la valeur est un nombre entier, comme $3$, sont de type int (integer : nombre entier). Une valeur de type int est exprimée sur un nombre de bits arbitraires.
Type float (floating point number)
Celles comme $1.5 + 3,14$, dont la valeur est un nombre à virgule, sont de type float (floating point number : nombre en notation scientifique). Les valeurs de type float sont exprimées sur $64 \text{ bits}$ : $1 \text{ bit}$ de signe, $11 \text{ bits}$ d'exposant, $52 \text{ bits}$ de mantisse.
Type boolean
Celles comme $0 < 1$, dont la valeur est un booléen, False (faux) ou True (vrai), sont de type boolean. Dans les langages de programmation, on écrit en général les booléens False et True et non 0 et 1 pour éviter les confusions avec les nombres. Un booléen est simplement exprimé avec un bit : True est une autre notation pour le bit $1$, et False une autre notation pour le bit $0$.
Type str (string)
Celles, comme $\text{"Bon" + "jour"}$, dont la valeur est une chaîne de caractères, comme $\text{"Bonjour"}$, sont de type str. Dans une valeur de type str, chaque caractère est exprimé en Unicode.
Avantages du typage
Donner un type à chaque expression a plusieurs avantages : d'une part, cela permet de préciser la manière dont les données doivent être exprimées, puisque le nombre entier $1$ et le nombre à virgule $1,0$ sont exprimés d'une manière très différente.
D'autre part, les types permettent d'éviter un certain nombre d'erreurs : par exemple l'expression $\text{"Bonjour" + 1}$ contient une erreur puisqu'il est impossible d'ajouter une chaîne de caractères et un nombre entier.
Conversion de types
On peut changer le type d'une expression en la préfixant par le nom d'un type.
Exemples- Si la valeur de l'expression e est le nombre entier $64$, alors celle de l'expression str(e) est la chaîne de caractères $"64"$
- Si la valeur de l'expression e est le nombre à virgule $3,14$, alors celle de l'expression int(e) est le nombre entier $3$