Aide-mémoire Python
La syntaxe rangée par ce qu'on cherche à faire, et les pièges démontrés plutôt que décrits.
Ranger une valeur
| Écrire | Ce que ça fait |
|---|---|
x = 5 | Un entier, type int. |
pi = 3.14 | Un nombre à virgule, type float. |
nom = "Ada" | Du texte, type str. |
actif = True | Un booléen, True ou False. |
type(x) | Donne le type d'une valeur. |
x, y = 1, 2 | Range deux valeurs d'un coup. |
x, y = y, x | Échange deux valeurs sans variable temporaire. |
Calculer
| Écrire | Ce que ça fait |
|---|---|
+ - * / | La division / rend toujours un nombre à virgule. |
// | Division entière : 7 // 2 vaut 3. |
% | Reste de la division : 7 % 2 vaut 1. |
** | Puissance : 2 ** 10 vaut 1024. |
abs(x) | Valeur absolue. |
round(x, 2) | Arrondir à deux décimales. |
min(a, b) max(a, b) | Le plus petit, le plus grand. |
sum(liste) | La somme des éléments. |
Décider
| Écrire | Ce que ça fait |
|---|---|
if … : elif … : else : | Tester plusieurs cas, dans l'ordre. |
== != < > <= >= | Comparer. == compare, = range. |
and or not | Combiner des conditions. |
in | "a" in "chat" vaut True. |
x if cond else y | Choisir une valeur en une ligne. |
Répéter
| Écrire | Ce que ça fait |
|---|---|
for i in range(5) | i prend 0, 1, 2, 3, 4. La borne haute est exclue. |
for i in range(2, 10, 3) | De 2 à 9, de trois en trois. |
for x in liste | Parcourt les éléments, pas les indices. |
for i, x in enumerate(liste) | Le rang et l'élément. |
while condition | Tant que la condition reste vraie. |
break continue | Sortir de la boucle, passer au tour suivant. |
Ranger plusieurs valeurs
| Écrire | Ce que ça fait |
|---|---|
nombres = [1, 2, 3] | Une liste, ordonnée et modifiable. |
nombres[0] nombres[-1] | Le premier, le dernier. |
nombres[1:3] | Une tranche : du rang 1 au rang 2. |
nombres.append(4) | Ajouter à la fin. |
nombres.sort() | Trier sur place. sorted(nombres) rend une copie triée. |
len(nombres) | Le nombre d'éléments. |
eleve = {"nom": "Ada"} | Un dictionnaire : des clés vers des valeurs. |
eleve["nom"] | Accéder par la clé. |
eleve.get("age", 0) | Accéder sans planter si la clé manque. |
for c, v in eleve.items() | Parcourir les paires. |
Travailler du texte
| Écrire | Ce que ça fait |
|---|---|
f"Bonjour {nom}" | Insérer une variable dans du texte. |
f"{x:.2f}" | Deux décimales. f"{x:>8}" cadre à droite sur 8 colonnes. |
s.upper() s.lower() | Changer la casse. |
s.strip() | Retirer les espaces au début et à la fin. |
s.split(",") | Découper en liste. |
",".join(liste) | Recoller une liste en texte. |
s.replace("a", "b") | Remplacer. |
"abc" in s | Chercher. |
Écrire une fonction
| Écrire | Ce que ça fait |
|---|---|
def f(a, b): | Définir. Le corps est indenté. |
return x | Rendre une valeur et sortir. Sans return, la fonction rend None. |
def f(a, b=2) | Un paramètre par défaut, toujours après ceux qui n'en ont pas. |
f(b=3, a=1) | Appeler en nommant les paramètres. |
Lire et écrire
| Écrire | Ce que ça fait |
|---|---|
print("x =", x) | Afficher. Les virgules ajoutent une espace. |
nom = input("Nom : ") | Lire une saisie. Rend toujours du texte. |
age = int(input()) | Convertir la saisie en entier. |
with open("f.txt") as f: | Ouvrir un fichier, fermé automatiquement à la sortie. |
for ligne in f: | Parcourir un fichier ligne par ligne. |
Ce qui se trompe le plus souvent
| Le piège | Ce qu'il faut faire |
|---|---|
/ rend un flottant même quand ça tombe juste | // pour une division entière |
input() rend du texte, même pour un nombre | int(input()) ou float(input()) |
b = a sur une liste ne la copie pas | a.copy(), list(a) ou a[:] |
| Un paramètre par défaut modifiable est partagé | liste=None puis liste = liste or [] |
range(n) s'arrête à n - 1 | range(1, n + 1) pour aller jusqu'à n |
== sur des nombres à virgule | math.isclose(a, b) |
Les indices commencent à 0, le dernier est -1 | len(x) - 1 est le dernier rang |