Types de base
Le type d'une valeur dit ce qu'elle sait faire : int et float calculent, str porte du texte, bool sert aux tests et None marque l'absence. Vérifiez-le dès qu'une donnée vient d'un fichier.
- int
- float
- str
- bool
- None
- type
- isinstance
- isclose
Syntaxe
int # entier : 42float # décimal : 3.14str # texte : "Lyon"bool # booléen : True / FalseNone # absence de valeurtype(x) isinstance(x, (int, float))Exemple
quantite = 3 # intprix = 19.90 # floatproduit = "Clavier" # stren_stock = True # boolremise = None # pas encore de remiseprint(type(prix).__name__) # → floatprint(isinstance(quantite, (int, float))) # → Trueprint(0.1 + 0.2 == 0.3) # → Falseprint(0.1 + 0.2) # → 0.30000000000000004import mathprint(math.isclose(0.1 + 0.2, 0.3)) # → Trueprint(sum([True, False, True])) # → 2print(remise is None) # → TrueÀ retenir
- type(x) donne le type exact ; isinstance(x, (int, float)) teste l'appartenance en acceptant les sous-types : c'est la forme à préférer dans une condition.
- Piège : un float est stocké en binaire, donc 0.1 + 0.2 vaut 0.30000000000000004 et 0.1 + 0.2 == 0.3 est faux. Comparez avec math.isclose(a, b) ou arrondissez avec round(x, 2) ; pour des montants exacts, utilisez decimal.Decimal.
- bool est un sous-type d'int : True vaut 1 et False vaut 0. sum(liste_de_booleens) compte donc les valeurs vraies, pratique pour compter les lignes qui vérifient une condition.
- None joue le rôle du NULL de SQL. Testez-le avec x is None, jamais avec x == None.
- Un int Python a une précision illimitée : 2 ** 100 ne déborde pas, contrairement aux entiers de numpy ou de beaucoup d'autres langages.
Voir aussi
- VariablesUne variable est un nom posé sur une valeur, dont Python déduit le type tout seul. Nommez chaque donnée d'un calcul pour le rendre lisible, réutilisable et facile à corriger.
- Conversions de typeint, float, str et bool convertissent une valeur d'un type à un autre. Toute donnée lue dans un fichier, un formulaire ou une API arrive en texte : il faut la convertir avant de calculer.
- OpérateursLes opérateurs combinent des valeurs : calcul (+, /, //, %, **), comparaison (==, <, >=) et logique (and, or, not). Ils forment le cœur de toute formule et de toute condition de filtre.