0% ont trouvé ce document utile (0 vote)
3 vues18 pages

Collections en Python : Listes, Tuples, Dictionnaires

Cour informatique

Transféré par

Hala Bella
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd
0% ont trouvé ce document utile (0 vote)
3 vues18 pages

Collections en Python : Listes, Tuples, Dictionnaires

Cour informatique

Transféré par

Hala Bella
Copyright
© All Rights Reserved
Nous prenons très au sérieux les droits relatifs au contenu. Si vous pensez qu’il s’agit de votre contenu, signalez une atteinte au droit d’auteur ici.
Formats disponibles
Téléchargez aux formats PDF, TXT ou lisez en ligne sur Scribd

Ministère de l’enseignement supérieur et de la recherche scientifique

Ecole Nationale Polytechnique (ENP)


1ère année Génie Industriel

Cours Python
2019/2020

Chapitre 3 : les
collections

Mohammed BELMOUHOUB
[Link]@[Link]

1
Plan
• Séquences
• Plus sur les chaînes de caractères
• Listes
• Tuples
• Les dictionnaires
• Les ensembles (Sets)

2
Séquences
Une séquence est un conteneur ordonné d’éléments indexés par des
entiers.

Python dispose de trois types prédéfinis de séquences :


• les chaînes de caractères (vues précédemment)
• les listes
• les tuples

3
Listes
Définition :
Collection ordonnée et modifiable d’éléments éventuellement
hétérogènes.

Syntaxe :
Éléments séparés par des virgules, et entourés de crochets.

Exemple :

4
Listes
Initialisations et tests :
Utilisation de la répétition, de l’opérateur d’appartenance (in) et de
l’itérateur range() :

Exemple :

5
Listes
Il est très important de savoir que l’affectation d’une liste (à partir d’une
liste préexistante) crée en réalité une référence et non une copie :
Techniquement, Python utilise des pointeurs (comme dans le langage
de programmation C) vers les mêmes objets.
Donc, si on modifie la liste x, la liste y est modifiée de la même manière.
Exemple :

La modification de x modifie y aussi !

6
Listes
Pour éviter ce problème, il va falloir créer une copie explicite de la liste
initiale. Observez cet exemple :

L’instruction x[:] a créé une copie « à la volée » de la liste x. Vous pouvez


utiliser aussi la fonction list() qui renvoie explicitement une liste.

7
Listes
Manipulation des « tranches » :
Si on veut supprimer, remplacer ou insérer plusieurs éléments d’une
liste, il faut indiquer une tranche dans le membre de gauche d’une
affectation et fournir une liste dans le membre de droite.

Exemple :

8
Plus sur les chaînes de caractères
Les chaînes de caractères peuvent être considérées comme des listes (de
caractères) un peu particulières :
Exemple :

Nous pouvons donc utiliser certaines propriétés des listes comme les
tranches :
Exemple :

9
Plus sur les chaînes de caractères
Contrairement aux listes, les chaînes de caractères présentent toutefois
une différence notable, ce sont des listes non modifiables. Une fois une
chaîne de caractères définie, vous ne pouvez plus modifier un de ses
éléments. Le cas échéant, Python renvoie un message d’erreur :
Exemple :

Par conséquent, si on veut modifier une chaîne de caractères, on doit en


construire une nouvelle.
On peut également générer une liste, qui elle est modifiable, puis revenir
à une chaîne de caractères.

10
Plus sur les chaînes de caractères
Méthodes associées aux chaînes de caractères :
Voici quelques méthodes spécifiques aux objets de type str :

Exemple :

11
Tuples
Définition :
• Collection ordonnée et non modifiable d’éléments éventuellement
hétérogènes.
• Les tuples (« n-uplets » en français) correspondent aux listes à la
différence qu’ils sont non modifiables.
• Les tuples s’affranchissent de ce problème puisqu’ils sont non
modifiables. Pratiquement, ils utilisent les parenthèses au lieu des
crochets
• Les tuples sont utiles pour définir des constantes.

Syntaxe :
Éléments séparés par des virgules, et entourés de parenthèses.
Exemple :

12
Tuples
• Comme les chaînes de caractères, les tuples ne sont pas modifiables !
• L’affectation et l’indication fonctionnent comme avec les listes. Mais si
on essaie de modifier un des éléments du tuple, Python renvoie un
message d’erreur. Si vous voulez ajouter un élément (ou le modifier),
vous devez créer un autre tuple :

Exemple :

13
Tuples
• Pour utiliser un tuple d’un seul élément, vous devez utiliser une
syntaxe avec une virgule (élément , ), ceci pour éviter une ambiguïté
avec une simple expression.
• Autre particularité des tuples, il est possible d’en créer de nouveaux
sans les parenthèses, dès lors que ceci ne pose pas d’ambiguïté avec
une autre expression :

14
Les dictionnaires
• Les dictionnaires constituent un type composite mais ils
n’appartiennent pas aux séquences.
• Comme les listes, les dictionnaires sont modifiables, mais les couples
enregistrés n’occupent pas un ordre immuable, leur emplacement est
géré par un algorithme spécifique
• Une clé pourra être alphabétique, numérique ou autres. Les valeurs
pourront être des valeurs numériques, des séquences, des
dictionnaires, mais aussi des fonctions, des classes ou des instances.

Syntaxe :
Collection de couples cle : valeur entourée d’accolades.
Remarque :
Les listes, les dictionnaires et les tuples sont des objets qui peuvent
contenir des collections d’autres objets. On peut donc construire des
listes qui contiennent des dictionnaires, des tuples ou d’autres listes,
mais aussi des dictionnaires contenant des tuples, des listes, etc.
15
Les dictionnaires
Quelques méthodes applicables aux dictionnaires :

16
Les ensembles ( sets )
Définition :
• Collection itérable non ordonnée d’éléments distincts.
• Les conteneurs de type set représentent un autre type d’objet
séquentiel qui peut se révéler très pratique. Ils ont la particularité
d’être non modifiables, non ordonnés et de ne contenir qu’une seule
copie maximum de chaque élément.
• Pour créer un nouveau set on peut utiliser les accolades :
Exemple :

17
Les ensembles ( sets )

Opérations sur les ensembles :

18

Vous aimerez peut-être aussi