Aller au contenu principal

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

ÉcrireCe que ça fait
x = 5Un entier, type int.
pi = 3.14Un nombre à virgule, type float.
nom = "Ada"Du texte, type str.
actif = TrueUn booléen, True ou False.
type(x)Donne le type d'une valeur.
x, y = 1, 2Range deux valeurs d'un coup.
x, y = y, xÉchange deux valeurs sans variable temporaire.

Calculer

ÉcrireCe 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

ÉcrireCe que ça fait
if … : elif … : else :Tester plusieurs cas, dans l'ordre.
== != < > <= >=Comparer. == compare, = range.
and or notCombiner des conditions.
in"a" in "chat" vaut True.
x if cond else yChoisir une valeur en une ligne.

Répéter

ÉcrireCe 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 listeParcourt les éléments, pas les indices.
for i, x in enumerate(liste)Le rang et l'élément.
while conditionTant que la condition reste vraie.
break continueSortir de la boucle, passer au tour suivant.

Ranger plusieurs valeurs

ÉcrireCe 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

ÉcrireCe 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 sChercher.

Écrire une fonction

ÉcrireCe que ça fait
def f(a, b):Définir. Le corps est indenté.
return xRendre 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

ÉcrireCe 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ègeCe 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 nombreint(input()) ou float(input())
b = a sur une liste ne la copie pasa.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 - 1range(1, n + 1) pour aller jusqu'à n
== sur des nombres à virgulemath.isclose(a, b)
Les indices commencent à 0, le dernier est -1len(x) - 1 est le dernier rang
Les démonstrations qui s'exécutent, les exemples et les explications sont sur plateforme-ets.fr/ressources/python