Académique Documents
Professionnel Documents
Culture Documents
3 4
Les listes <class ‘list’> Extraction de sous-listes :
Un autre avantage des listes est la possibilité de sélectionner une partie en utilisant
La liste peut également être indexée avec des nombres négatifs selon le un indiçage construit sur le modèle [m:n+1] pour récupérer tous les éléments, du
modèle suivant : émième au énième (de l’élément m inclus à l’élément n+1 exclus). On dit alors
qu’on récupère une tranche de la liste.
L[p:n] renvoie une nouvelle liste constituée des éléments de L d'indice p inclus à n
exclu.
L[p:n:pas] renvoie une nouvelle liste constituée des éléments de L d'indice p
Les indices négatifs reviennent à compter à partir de la fin. inclus à n exclu, tous les pas.
Leur principal avantage est que vous pouvez appeler le dernier élément d’une L[:] renvoie une nouvelle liste constituée de tous les éléments de L.
liste à l’aide de l’indice -1 sans pour autant connaître la longueur de la liste.
5 6
7 8
Opération sur les listes : Fonctions utiles pour travailler avec des listes :
9 1
0
Fonctions utiles pour travailler avec des listes : Fonctions utiles pour travailler avec des listes :
len(L) renvoie le nombre d'éléments dans L
L’instruction range() vous permet de créer des listes d’entiers (et d’entiers
L.append(x) ajoute l’élément x à la fin de la liste L. uniquement) de manière simple et rapide. L’instruction range() fonctionne sur le
L.insert(i,x) ajoute x à la position i modèle range([début,] fin[, pas]). Les arguments entre crochets sont
L.remove(x) supprime de la liste L, la première occurrence de optionnels.
l’élément x (si la liste L contient plusieurs fois l'élément x, seul le
premier est enlevé).
L.reverse(): inverser la liste L.
L.pop() supprime le dernier élément de la liste L.
L.pop(i) supprime l'élément d'indice i de la liste L.
del L[i]: supprime l’élément d’indice i
L.index(x) renvoie l'indice de l’élément x dans la liste L. Les fonctions max, min et sum renvoient le maximum, le minimum et la somme
des éléments d’une liste, respectivement.
L.sort() modifie la liste L en la triant par ordre croissant.
sorted(L) crée une copie de la liste L, triée par ordre croissant (la
liste L n'est pas modifiée par cette instruction ; seule sa copie est
triée).
L.count(x): renvoie le nombre d’apparition de la valeur x dans L. 11 12
Listes de listes Copie de listes
Sachez qu’il est tout-à-fait possible de construire des listes de Il est très important de savoir que l’affectation d’une liste (à partir d’une
listes. Cette fonctionnalité peut être parfois très pratique. Pour liste préexistante) crée en réalité une référence et non une copie :
accéder à un élément de la sous-liste on utilise un double
indiçage
13 14
15 16
Création d’une liste Création d’une liste
Exemple 1: Saisie d’une liste de 5 entier: On peut donc créer une liste en plaçant entre crochets (ou en écrivant list(…)
une expression suivie par une clause for (ou plusieurs) puis par zéro ou if. La
liste obtenue sera l’évaluation de l’expression. Rq: l’odre des expression for et
if est le même que celui des codes classiques.
Exemple 2:Création d’une liste de carrées:
Avec la fonction insert
Avec la concaténation des listes (il faut faire attention à l’ordre) On peut écrire le programme précèdent autrement:
Les fonctions utiles sur les chaines Les fonctions utiles sur les chaines
isupper(): retournent True si la chaîne ne contient que des majuscules isdigit() : retournent True si la chaîne ne contient que des caractères numériques et
islower() : retournent True si la chaîne ne contient que des minuscules qu’il y a au moins un caractère. Si non False
istitle() : retourne True si seule la première lettre de chaque mot de la chaîne est en isspace() : retournent True si la chaîne ne contient que des espaces et au moins un
majuscule caractère.
ch.title() transforme la chaine ch dans un format title ch.upper() : affiche toute la chaine ch en majuscule. Le résultat est une nouvelle
isalnum(): retournent True si la chaîne ne contient que des caractères chaine.
alphanumériques(les lettres de A à Z majuscules et minuscules et les chiffres de 0 à 9) et ch.lower() : affiche toute la chaine ch en minuscule. Le résultat est une nouvelle chaine.
qu’il y a au moins un caractère. Si non False ch.split(): divise ou décompose une chaine à l’aide d’un séparateur donné entre
isalpha(): retournent True si la chaîne ne contient que des caractères alphabétiques ((les parenthèse (argument) et ajoute les données dans une liste.
lettres de A à Z majuscules et minuscules) et qu’il y a au moins un caractère. Si non False
23 24
Les chaines de caractères <class ’str’> Les tuples < class ‘tuple’>
Remarque : Les chaînes n’étant pas modifiable il est donc possible de Les tuples (également appelé n-uplet) sont utilisés de façon quasi transparente
migrer vers des listes au moyen de l’instruction suivante list : par Python, ils permettent de créer des séquences de données que l’on ne peut
plus modifier (immutables ou non mutables).
On les écrit simplement séparés par des virgules et entre parenthèses.
Il est même possible, lorsqu'il n’y a pas d’ambiguïté, d’enlever les parenthèses
La boucle for avec les chaines: du tuple.
Saisie d’une chaine ch
Ou bien
25 26
Les tuples < class ‘tuple’> Les tuples < class ‘tuple’>
Il y a deux cas particuliers de tuples : La boucle for avec les tuples:
- Les tuples vide qui sont construit avec des parenthèses vide ()
- Les tuples d’un seul élément qui doit contenir une virgule à la fin pour
le distinguer de simples parenthèses de regroupement d’une expression
calculée.
Remarque : Les tuples n’étant pas modifiable il est possible de migrer vers
des listes au moyen de l’instruction suivante list :
27 28
Les ensembles <class ’set’> Comment construire un ensemble
31 32
Les dictionnaires <class ’dict’> Fonctions utiles sur les dictionnaires
Un dictionnaire (tableau associatif) est un type de données permettant de stocker
des couples cle:valeur, avec un accès très rapide à la valeur à partir de la clé, la
clé ne pouvant être présente qu’une seule fois dans le tableau.
Caractéristiques:
- L’opérateur d’appartenance d’une clé (in)
- La fonction taille (len()) donnant le nombre de couples stockés
- Permet de retrouver un objet par sa clé
- Il est itérable (on peut le parcourir)
- Non ordonné
- Mutable.
-Le dictionnaire vide se note {} ou dict()
33
Fonctions utiles sur les dictionnaires Fonctions utiles sur les dictionnaires
list(d): renvoie la liste de toutes les clés du dictionnaire d dans l’ordre d.keys(): renvoie la séquence des clés utilisées dans le dictionnaire. Cette
d’insertion séquence peut être utilisée telle quelle dans les expressions ou convertie en liste
sorted(d): renvoie une liste des clés triées (par ordre croissant par avec la fonction intégrée list() ou en tuple avec la fonction intégrée tuple().
défaut) d.values(): renvoie la séquence des valeurs utilisées dans le dictionnaire. Cette
sorted(d,reverse=True): renvoie une liste des clés de d triées par séquence peut être utilisée telle quelle dans les expressions ou convertie en liste
ordre décroissant. avec la fonction intégrée list() ou en tuple avec la fonction intégrée tuple().
in: pour lire une clé dans le dictionnaire d.items(): renvoie une liste contenant les couples clé:valeur utilisées dans le
d[x]=y: permet d’ajouter le couple x:y au dictionnaire d ou modifier la dictionnaire sous formes d’un tuple.
valeur d’une clé déjà existante pop(clé): retourne la valeur val associée à la clé et supprime le couple clé:val
du dictionnaire
d[x]: renvoie la valeur de la clé x (si x:y est couple dans d)
d.get(clé): permet de récupérer une valeur dans un dictionnaire et si la valeur
est introuvable , on peut donner une valeur par défaut.
max(d): permet de retourner le maximum des clés.
35 d.update(): met à jour d’un dictionnaire à partir d’un autre dictionnaire 36
Création d’un dictionnaire: Création d’un dictionnaire:
Rq: les clés peuvent être de n'importe quel type immuable ; les Exemple : création d’un
chaînes de caractères et les nombres peuvent toujours être des dictionnaire d{matière:note},
avec comme clé les matières
clés. Les tuples peuvent être utilisés comme clés s'ils ne
(math, physique et chimie) et
contiennent que des chaînes, des nombres ou des tuples ; si un tuple
comme valeurs les notes
contient un objet muable, de façon directe ou indirecte, il ne peut pas attribuées (12,15,14)
être utilisé comme une clé. Les listes ne peuvent pas être utiliser
comme clés, car elles peuvent être modifiées en place en utilisant des
affectations par position, par tranches ou via des méthodes
comme append() ou extend().
37 38
39 40
La fonction enumerate():
Lorsque vous itérez sur une séquence (liste, chaine, tuple, ensemble et
dictionnaire), on peut récupérer la position et la valeur correspondante en même
temps en utilisant la fonction enumerate.
Pour le dictionnaire, la fonction enumerate a assigné la variable compteur
uniquement sur les clés.
41