Listes¶
Une liste est un ensemble d’éléments
Les éléments d’une liste sont:
ordonnés
séparés par une virgule
,
délimités par des crochets
[]
Voici une liste avec 3 éléments:
[2, 3, 5]
[2, 3, 5]
Une liste est ordonnée.
Deux listes avec les mêmes éléments, mais un ordre différent sont différentes.
[1, 2] == [2, 1]
False
Nouveaux concepts¶
Dans ce chapitre vous allez découvrir les concepts de
création de liste:
a = [1, 2, 3]
indexage d’un élément:
a[0]
Les opérateurs de
concaténation
+
répétition
*
Les fonctions:
len()
pour retourner la longueur de la listelist()
pour transformer une séquence en listerange()
pour produire une plage d’entiers
Exemples de listes¶
Voici une liste avec des nombres.
primes = [2, 3, 5, 7, 11, 13]
primes
[2, 3, 5, 7, 11, 13]
Voici une liste avec des chaines de caractères.
fruits = ['pomme', 'banane', 'poire', 'orange']
fruits
['pomme', 'banane', 'poire', 'orange']
Une liste peut contenir un mélange d’objets de types différents.
mix = [123, 'hello', True, False]
mix
[123, 'hello', True, False]
Une liste peut même contenir une deuxième liste.
[2, 3, [0, 1]]
[2, 3, [0, 1]]
Sur un Mac vous pouvez choisir et insérer des émojis en faisant ceci
Choisir > Préférences Système… > Clavier
Cocher Afficher les visualisateurs de claver et d’émoji dans la barre de menu
animaux = ['🐶', '🐱', '🐭']
animaux
['🐶', '🐱', '🐭']
Et voici une liste vide.
[]
[]
Opérateur de concaténation¶
L’opérateur +
permet de concaténer des listes.
primes + fruits
[2, 3, 5, 7, 11, 13, 'pomme', 'banane', 'poire', 'orange']
d = fruits + animaux
d
['pomme', 'banane', 'poire', 'orange', '🐶', '🐱', '🐭']
Opérateur de répétition¶
L’opérateur *
permet de concaténer des listes.
Nous pouvons facilement créer des listes d’objets identiques.
uns = [1] * 13
uns
[1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1, 1]
Voici la liste animaux répétée deux fois.
animaux * 2
['🐶', '🐱', '🐭', '🐶', '🐱', '🐭']
Index¶
Un index entre crochets permet d’accéder à un élément d’une liste.
Les indexes commencent à 0. Le premier élément a donc l’index 0.
fruits[0]
'pomme'
Le deuxième élément d’une liste a l’index 1.
fruits[1]
'banane'
Un index négatif permet d’adresser les éléments d’une liste depuis sa fin.
fruits[-1]
'orange'
Voici l’avant-dernier fruit.
fruits[-2]
'poire'
Affectation d’un élément¶
L’affectation suivante change le deuxième élément en ananas.
fruits[1] = 'ananas'
fruits
['pomme', 'ananas', 'poire', 'orange']
L’affectation suivante transforme le dernier élément en cerise.
fruits[-1] = 'cerise'
fruits
['pomme', 'ananas', 'poire', 'cerise']
Plages numériques¶
La fonction range()
crée une plage d’entiers. Nous allons la revoir avec les boucles for
.
Pour afficher les éléments de la plage, nous entourons range()
par la fonction list()
La fonction range(n)
produit une plage de 0 à n-1.
Voici la plage des nombres de 0 à 9.
list(range(10))
[0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
La fonction range(m, n)
produit une plage de m à n-1.
Voici la plage des nombres de 10 à 19.
list(range(10, 20))
[10, 11, 12, 13, 14, 15, 16, 17, 18, 19]
Un troisième argument peut être utilisé pour indiquer l’incrément.
Voici la plage des nombres pairs de 10 à 18.
list(range(10, 20, 2))
[10, 12, 14, 16, 18]
Une plage peut être inversée avec un incrément négatif.
Voici la plage des entiers de 30 à 21.
list(range(30, 20, -1))
[30, 29, 28, 27, 26, 25, 24, 23, 22, 21]
Longueur¶
La fonction len
retourne la longeur d’une liste.
len(fruits)
4
La longeur de la liste vide est 0.
len([])
0
Transformer en liste¶
La fonction list
transforme une séquence en liste.
list('abcdefghij')
['a', 'b', 'c', 'd', 'e', 'f', 'g', 'h', 'i', 'j']
La méthode split()
permet de découper une phrases en mots et créer une liste.
Attention:
split()
une méthode qui est attachée à une chaine avec la notation dotée.
'les mots sont séparés par des espaces'.split()
['les', 'mots', 'sont', 'séparés', 'par', 'des', 'espaces']
Nous pouvons également transformer une chaine avec des émojis en liste.
list('🍏🍎🍐🍊🍋🍌')
['🍏', '🍎', '🍐', '🍊', '🍋', '🍌']