Listes python
Les listes (list / array ) en python sont des variables dans lesquelles on peut mettre plusieurs variables.
Python3
Création d’une liste
1
2
3
liste = []
liste
[]
Ajout valeur
1
2
3
liste = [1,2,3]
liste
[1, 2, 3]
Exemple append
1
2
3
4
5
liste = []
liste.append(1)
liste.append("ok")
liste
[1, 'ok']
Par item
1
2
3
liste = ["a","b","c"]
liste[0]
'a'
Modif valeur item
1
2
3
4
liste = ["x","y","z"]
liste[2] = "a"
liste
['x', 'y', 'a']
Suppression item
1
2
3
4
liste = ["a", "b", "c"]
del liste[1]
liste
['a', 'c']
Suppression par valeur
1
2
3
liste.remove("a")
liste
['c']
Reverse
1
2
3
4
liste = ["a", "b", "c"]
liste.reverse()
liste
['c', 'b', 'a']
Compter les items
1
2
3
4
liste = ["a", "b", "c"]
len(liste)
liste
3
Compter les occurences d’un item
1
2
3
4
5
liste = ["a","a","a","b","c","c"]
liste.count("a")
3
liste.count("c")
2
Trouver l’index d’un item
1
2
3
liste = ["a","a","a","b","c","c"]
liste.index("b")
3
Manipuler une liste
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
liste = ["orange", "bleu", "jaune", "vert", "violet"]
liste[0]
'orange'
liste[-1] # Cherche la dernière occurence
'violet'
liste[-4:] # Affiche les 4 dernières occurrences
['bleu', 'jaune', 'vert', 'violet']
liste[:] # Affiche toutes les occurences
['orange', 'bleu', 'jaune', 'vert', 'violet']
liste[2:4] = ["satin", "gris"]
liste
['orange', 'bleu', 'satin', 'gris', 'violet']
liste[:] = [] # vide la liste
liste
[]
Loop sur une liste
1
2
3
4
5
6
7
8
liste = ["orange", "bleu", "jaune", "vert", "violet"]
for couleur in liste:
print(couleur)
orange
bleu
jaune
vert
violet
Récypération d’index avec avec enumerate
1
2
3
4
5
6
7
8
9
10
11
12
13
14
liste = ["orange", "bleu", "jaune", "vert", "violet"]
for couleur in enumerate(liste):
print(couleur)
print(type(couleur))
(0, 'orange')
<class 'tuple'>
(1, 'bleu')
<class 'tuple'>
(2, 'jaune')
<class 'tuple'>
(3, 'vert')
<class 'tuple'>
(4, 'violet')
<class 'tuple'>
Copier une liste
1
2
3
4
5
6
7
x = ["orange", "bleu", "jaune", "vert", "violet"]
y = x
y
['orange', 'bleu', 'jaune', 'vert', 'violet']
y[0] = "rose"
x
['rose', 'bleu', 'jaune', 'vert', 'violet'] # /!\ Affecte les 2 listes
Copier une liste de façon indépendante
1
2
3
4
5
6
7
x = ["orange", "bleu", "jaune", "vert", "violet"]
y = x[:]
y[0] = "rose"
y
['rose', 'bleu', 'jaune', 'vert', 'violet']
x
['orange', 'bleu', 'jaune', 'vert', 'violet']
Copier une liste avec la fonction deepcopy
du module copy
1
2
3
4
5
6
7
x = ["orange", "bleu", "jaune", "vert", "violet"]
y = copy.deepcopy(x)
y[1] = ["jaune", "vert", "violet"]
x
[['orange', 'bleu'], 'jaune', 'vert', 'violet']
y
[['orange', 'bleu'], ['jaune', 'vert', 'violet'], 'vert', 'violet']
List to string
1
2
3
liste = ["orange", "bleu", "jaune", "vert", "violet"]
":".join(liste)
'orange:bleu:jaune:vert:violet'
String to List
1
2
3
liste = 'orange:bleu:jaune:vert:violet'
liste.split(":")
['orange', 'bleu', 'jaune', 'vert', 'violet']
Vérifier l’existance d’un item dans une liste
1
2
3
4
5
liste = [1,2,3,5,10]
3 in liste
True
45 in liste
False
Fonction range
suite arithmétique
1
2
3
4
5
6
7
8
9
10
11
12
13
14
range(10)
range(0, 10)
for a in range(10):
print(a)
0
1
2
3
4
5
6
7
8
9
Deux listes, bout à bout avec extend
1
2
3
4
5
x = [1, 2, 3, 4]
y = [4, 5, 1, 0]
x.extend(y)
print(x)
[1, 2, 3, 4, 4, 5, 1, 0]
Permutations avec itertools
1
2
3
4
5
6
7
8
from itertools import permutations
list(permutations(['a', 'b', 'c']))
[('a', 'b', 'c'),
('a', 'c', 'b'),
('b', 'a', 'c'),
('b', 'c', 'a'),
('c', 'a', 'b'),
('c', 'b', 'a')]
Permutations de plusieurs listes avec product
de itertools
1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
from itertools import product
list(product(['a', 'b'], ['c', 'd']))
[('a', 'c'), ('a', 'd'), ('b', 'c'), ('b', 'd')]
list(product(['a', 'b'], ['c', 'd'], [('a', 'c'), ('a', 'd'), ('b', 'c'), ('b', 'd')]))
[('a', 'c', ('a', 'c')),
('a', 'c', ('a', 'd')),
('a', 'c', ('b', 'c')),
('a', 'c', ('b', 'd')),
('a', 'd', ('a', 'c')),
('a', 'd', ('a', 'd')),
('a', 'd', ('b', 'c')),
('a', 'd', ('b', 'd')),
('b', 'c', ('a', 'c')),
('b', 'c', ('a', 'd')),
('b', 'c', ('b', 'c')),
('b', 'c', ('b', 'd')),
('b', 'd', ('a', 'c')),
('b', 'd', ('a', 'd')),
('b', 'd', ('b', 'c')),
('b', 'd', ('b', 'd'))]
Afficher des éléments
Afficher les 2 premiers éléments d’une liste
1
2
3
liste = [1, 2, 3, 4, 5, 6]
liste[:2]
[1, 2]
Afficher le dernier item d’une liste
1
2
3
liste = [1,2,3,4,5]
liste[-1]
6
Afficher le 3ème élément en partant de la fin
1
2
3
liste = [1, 2, 3, 4, 5, 6]
liste[-3]
4
Afficher les 3 derniers éléments d’une liste
1
2
3
liste = [1, 2, 3, 4, 5, 6]
liste[-3:]
[4, 5, 6]
Vous pouvez additionner deux listes pour les combiner ensemble en utilisant l’opérateur +
1
2
3
4
x = [1, 2, 3]
y = [4, 5, 6]
x + y
[1, 2, 3, 4, 5, 6]
Vous pouvez même multiplier une liste
1
2
3
x = [1, 2]
x*5
[1, 2, 1, 2, 1, 2, 1, 2, 1, 2]
Ce qui peut être utile pour initialiser une liste
1
2
[0] * 5
[0, 0, 0, 0, 0]