Types de données Python pour la science des données
int, float, complex, bool, str — comment la précision et le choix du type influencent l’analyse des données.
Types de données Python pour la science des données est une leçon Learn AI with Python gratuite sur CoddyKit. Ceci est la leçon 3 sur 4. Tu peux lire la leçon complète ci-dessous gratuitement — puis la pratiquer en direct dans le navigateur avec un éditeur de code intégré et un tuteur IA 24/7. Elle fait partie du parcours d'apprentissage Learn AI with Python, et ta progression se synchronise sur le web et l'application CoddyKit. Le cours Learn AI with Python comprend 4 leçons au total.
Les nombres en science des données
Python possède deux types numériques fondamentaux : int (nombres entiers de précision arbitraire) et float (nombres décimaux IEEE 754 sur 64 bits). Choisir le bon type permet d’éviter des erreurs subtiles dans les données.
int est exact et non borné
Les entiers Python ne débordent jamais. Ils peuvent devenir aussi grands que la mémoire disponible le permet, ce qui est idéal pour les comptages exacts et les grandes factorielles.
big = 2 ** 200
print(big)
print(type(big)) # <class 'int'>Le piège de la précision des float
Les nombres flottants ne peuvent pas représenter exactement tous les nombres décimaux. La surprise classique : 0.1 + 0.2 n’est pas exactement égal à 0.3.
print(0.1 + 0.2) # 0.30000000000000004
print(0.1 + 0.2 == 0.3) # FalseComparer les float en toute sécurité
Ne testez jamais les nombres flottants avec ==. Utilisez plutôt math.isclose avec une tolérance.
import math
print(math.isclose(0.1 + 0.2, 0.3)) # TrueDecimal pour les montants
Pour les devises, utilisez decimal.Decimal, qui stocke des valeurs exactes en base 10. Créez toujours les Decimal à partir de chaînes de caractères, et non de nombres flottants, afin de ne pas hériter de leurs erreurs.
from decimal import Decimal
price = Decimal("0.10") + Decimal("0.20")
print(price) # 0.30bool est une sous-classe de int
En Python, True est égal à 1 et False est égal à 0. Vous pouvez ainsi additionner des booléens pour compter les correspondances.
mask = [True, False, True, True]
print(sum(mask)) # 3 matches
print(True + True) # 2Compter avec des booléens
Ce comportement des booléens comme entiers est présent partout dans NumPy et pandas : additionner un masque booléen compte le nombre de lignes qui satisfont une condition.
ages = [12, 20, 35, 17, 40]
adults = sum(a >= 18 for a in ages)
print(adults) # 3Examiner le type avec type()
type(x) renvoie la classe exacte d’une valeur. C’est utile lorsqu’une colonne contient de manière inattendue des chaînes de caractères au lieu de nombres.
print(type(5)) # <class 'int'>
print(type(5.0)) # <class 'float'>
print(type("5")) # <class 'str'>Vérifier le type avec isinstance()
Préférez isinstance à type ==, car cette fonction respecte l’héritage. Notez qu’un booléen passe une vérification de type entier.
print(isinstance(5, int)) # True
print(isinstance(True, int)) # True (bool subclasses int)
print(isinstance(5.0, (int, float))) # TruePièges de conversion implicite
Mélanger des types entraîne des conversions silencieuses. La division entière de nombres flottants produit des nombres flottants ; concaténer un nombre avec une chaîne de caractères déclenche une TypeError. Nettoyez vos types de données dès le début.
print(5 / 2) # 2.5 (true division always float)
print(5 // 2) # 2 (floor division)
# "id-" + 5 # TypeError
print("id-" + str(5)) # id-5Surprises des float dans les agrégations
Additionner de nombreux nombres flottants accumule de petites erreurs. Pour les grands ensembles de données, préférez NumPy, qui utilise une addition par paires pour réduire la dérive.
vals = [0.1] * 10
print(sum(vals)) # 0.9999999999999999
# NumPy: np.sum(vals) is more numerically stableVérification rapide
Testez votre compréhension des types Python.
Récapitulatif
Les faits numériques essentiels pour travailler sur les données :
intest exact et non bornéfloatest approximatif : utilisezmath.iscloseplutôt que==Decimal("...")pour les montantsboolest un entier :sum(mask)permet de comptertype()indique la classe, tandis queisinstance()respecte l’héritage- Surveillez les conversions silencieuses lors des divisions et des concaténations
Questions Fréquemment Posées
La leçon « Types de données Python pour la science des données » est-elle gratuite ?
Oui — le texte complet de « Types de données Python pour la science des données » est gratuit à lire ici sur le web. Pour la pratiquer de manière interactive (un éditeur de code intégré et un tuteur IA 24/7) et déverrouiller le reste du cours Learn AI with Python, passe à CoddyKit PRO. Le cours Learn AI with Python comprend 4 leçons au total.
Qu'est-ce que j'apprendrai dans « Types de données Python pour la science des données » ?
int, float, complex, bool, str — comment la précision et le choix du type influencent l’analyse des données. Tu pratiques Learn AI with Python avec du code pratique que tu exécutes directement dans le navigateur, et un tuteur IA 24/7 répond à tes questions au fur et à mesure que tu avances dans la leçon.
Dois-je avoir de l'expérience pour commencer Learn AI with Python ?
Aucune expérience préalable n'est requise. Learn AI with Python sur CoddyKit est structuré pour les débutants jusqu'aux apprenants avancés, donc tu peux commencer ici ou depuis le début et avancer à ton rythme. Ceci est la leçon 3 sur 4.
Combien de temps prend la leçon « Types de données Python pour la science des données » ?
La plupart des leçons CoddyKit prennent environ 5–10 minutes. Chacune est courte et interactive, tu progresses régulièrement et tu repiques exactement où tu t'es arrêté sur le web et l'app.
Peux-tu écrire et exécuter du code dans cette leçon Learn AI with Python ?
Oui. Chaque leçon Learn AI with Python inclut un éditeur de code intégré, tu écris et exécutes du vrai code directement dans ton navigateur et tu reçois des retours IA instantanés — aucune configuration locale requise.
Toutes les leçons de ce cours
- Environnements virtuels et pip
- Notebooks Jupyter pour la science des données
- Types de données Python pour la science des données
- Utiliser le REPL Python et IPython