Variables & types#
essentiel
Déclaration#
Pas de mot-clé de déclaration : l'affectation crée la variable. Le typage est dynamique (le type est lié à la valeur, pas au nom).
Conventions de nommage#
| Élément | Convention | Exemple |
|---|---|---|
| Variable, fonction | snake_case |
nombre_total |
| Constante | MAJUSCULES_SNAKE |
TAUX_TVA |
| Classe | PascalCase |
CompteBancaire |
| Interne (convention) | préfixe _ |
_valeur_interne |
Python n'a pas de private / public : le préfixe _ est une convention indiquant « ne pas utiliser depuis l'extérieur », rien ne l'empêche techniquement.
Portée#
Voir Spécificités Python pour la règle LEGB, global et nonlocal.
Constantes#
Python n'a pas de vraies constantes : la convention MAJUSCULES signale une valeur à ne pas modifier, mais rien ne l'empêche techniquement.
Énumérations (enum)#
Pour un ensemble fermé de valeurs nommées (états, modes, catégories), préférer une énumération à des chaînes libres : les fautes de frappe deviennent des erreurs immédiates.
from enum import Enum, auto
class Etat(Enum):
EN_ATTENTE = auto()
EN_COURS = auto()
TERMINE = auto()
e = Etat.EN_COURS
e.name # 'EN_COURS'
e.value # 2
list(Etat) # [<Etat.EN_ATTENTE: 1>, <Etat.EN_COURS: 2>, <Etat.TERMINE: 3>]
match e:
case Etat.EN_COURS: # comparaison par point : pas de capture accidentelle
...
Annotations de type (indicatives)#
Non vérifiées à l'exécution (sauf outil externe comme mypy). Détail : Type hints.