Question 1Parmi ces propositions, laquelle décrit le mieux l'intérêt de « penser aux types » en Python ?
Récapitulatif des types Python — pourquoi les types comptent et la porte vers les classes
Récapitule les types de base de Python et fais ton premier pas vers la programmation orientée objet avec class.
Qu'est-ce qu'un « type », au juste ?
Jusqu'ici tu as rencontré beaucoup de types — int, float, str, bool, list, dict, tuple, set et d'autres. Choisir le bon type pour la tâche est ce qui compte le plus en pratique.
Comme le montre l'exemple, même l'opérateur + exécute des opérations différentes selon le type.
Autrement dit, choisir un type différent selon l'usage est la façon dont tu changes ce qu'une variable peut faire.
Tous les types vus jusqu'ici, en un coup d'œil
Organisons les types de Python Basics selon ce à quoi tu les utilises. Que tu veuilles traiter du « calcul numérique », de l'« information textuelle » ou d'un « ensemble de plusieurs valeurs », le bon type tombe naturellement.
| Type | Usage typique | Exemple |
|---|---|---|
| int | Calculer des prix ou des quantités | 5, 100, -3 |
| float | Montants TTC ou taux de remise | 3.14, 0.5 |
| bool | Suivre l'état de connexion ou la dispo d'un stock | True, False |
| str | Stocker des noms d'utilisateur ou des commentaires | 'hello' |
| list | Un panier ou une liste ordonnée de résultats de recherche | [1, 2, 3] |
| tuple | Des paires fixes, comme latitude/longitude | (1, 2, 3) |
| dict | Contenir des infos utilisateur (id / name / email) | {'a': 1} |
| set | Dédupliquer des tags ou vérifier l'appartenance | {1, 2, 3} |
Garde aussi en tête si un type est modifiable (mutable) ou non modifiable (immuable). list / dict / set sont mutables ; tout le reste est immuable.
Tu peux définir tes propres types avec class
Tout ce qu'on a vu jusque-là — int / list / dict et leurs amis — est un type fourni par Python (un type intégré). Dans les vrais projets, beaucoup de concepts apparaissent que les types intégrés ne savent pas vraiment représenter seuls : « Utilisateur », « Produit », « Commande »… Python te permet de définir tes propres types avec class — c'est la porte d'entrée de la programmation orientée objet (OOP). On reviendra en détail sur l'OOP dans de futurs articles.
# Définir un nouveau type Point (une coordonnée)
class Point:
def __init__(self, x, y):
self.x = x
self.y = y
p = Point(3, 4) # créer une instance de Point
print(p.x) # 3
Un vrai cours d'OOP arrive dans une autre série
Classes, héritage, polymorphisme et le reste de la programmation orientée objet seront couverts dans une série dédiée à part. Pour l'instant, il suffit de savoir que en plus des types intégrés, tu peux aussi construire les tiens.
Vérification des connaissances
Répondez à chaque question une par une.
Question 2Parmi les types suivants, lequel est mutable (modifiable) ?
Question 3Quel mot-clé utilises-tu pour définir ton propre nouveau type en Python ?