Aller au contenu

Listes

Une liste est une collection ordonnée et modifiable. C'est ce qui se rapproche le plus des tableaux (array).

Créer une liste:
liste = []
# Constructor list()
liste = list(("alpha", "banana", "cherry"))
Ajouter une valeur (append):
>>> liste = [1,2,3]
>>> liste
[1, 2, 3]

>>>> liste.append(4)
>>> liste
[1, 2, 3, 4]

>>> liste.append("Bonjour")
>>> liste
[1, 2, 3, 4, 'Bonjour']
Afficher un item:
>>> liste = [1, 2, 3, 4, 'Bonjour']
>>> liste[0]
1
>>> liste[4]
'Bonjour'
Modifier un item:
>>> liste[4] = "Hello"
>>> liste
[1, 2, 3, 4, 'Hello']
Supprimer un item (remove):
>>> liste = [1, 2, 3, 4, 'Hello']
>>> liste.remove(2)
>>> liste
[1, 3, 4, 'Hello']
Supprimer un item (pop):
>>> liste = [1, 2, 3, 4, 'Hello']
>>> liste.pop() # supprimer l'index spécifié ou le dernier
>>> liste
[1, 2, 3, 4]
Supprimer un item (del):
>>> liste = [1, 2, 3, 4, 'Hello']
>>> del liste[1]
>>> liste
[1, 3, 4, 'Hello']
Supprimer la liste (del):
>>> liste = [1, 2, 3, 4, 'Hello']
>>> del liste
>>> liste
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
NameError: name 'liste' is not defined
Vider la liste (clear):
>>> liste = [1, 2, 3, 4, 'Hello']
>>> liste.clear()
>>> liste
[]
Inverser les items (reverse):
>>> liste = [1, 3, 4, 'Hello']
>>> liste.reverse()
>>> liste
['Hello', 4, 3, 1]
Nb d'items (len):
>>> liste = ['Hello', 4, 3, 1]
>>> len(liste)
4
Nb d'occurences d'une valeur (count):
>>> liste = [1, 2, 3, 4, 'Bonjour', 1, 1]
>>> liste
[1, 2, 3, 4, 'Bonjour', 1, 1]
>>> liste.index(1)
0
>>> liste.count(1)
3
Index d'une valeur (index):
>>> liste = [1, 2, 3, 4, 'Bonjour', 1, 1]
>>> liste.index("Bonjour")
4
Manipuler une liste:
>>> liste = [1, 2, 3, 4, 'Bonjour', 1, 1]
>>> liste
[1, 2, 3, 4, 'Bonjour', 1, 1]

# Dernière occurence
>>> liste[-1]
1

# 3e occurence en partant de la fin
>>> liste[-3]
'Bonjour'

# 2 premières occurences
>>> liste[:2]
[1, 2]

# 3 dernières occurences
>>> liste[-3:]
['Bonjour', 1, 1]

# vider la liste
>>> liste[:] = []
>>> 
Boucle:
>>> liste = [1, 2, 3, 4, 'Bonjour', 1, 1]
>>> for i in liste:
...     print (i)
...
1
2
3
4
Bonjour
1
1
Boucle (avec l'index):
>>> liste = [1, 2, 3, 4, 'Bonjour', 1, 1]
>>> for i in enumerate(liste):
...     print (i)
...
(0, 1)
(1, 2)
(2, 3)
(3, 4)
(4, 'Bonjour')
(5, 1)
(6, 1)
# Les valeurs retournées par la boucle sont des tuples.
Copier une liste:
>>> x = [1, 2, 3]
>>> y = x[:]
>>> y[0] = 0
>>> x
[1, 2, 3]
>>> y
[0, 2, 3]
Transformer une string en liste (split):
>>> string = "Language:Version:OS"
>>> z = string.split(":")
>>> z
['Language', 'Version', 'OS']
Transformer une liste en string (join):
>>> liste = ['semis','date','lune']
>>> ";".join(liste)
'semis;date;lune'
Trouver un item dans une liste (in):
>>> liste = ['semis','date','lune']
>>> 'lune' in liste
True
>>> 'meteo' in liste
False
Range:
>>> range(0, 10)
Concaténer 2 listes (extend, +):
>>> a = [1, 2, 3]
>>> b = [4, 5 ,6]
>>> a.extend(b)
>>> print(a)
[1, 2, 3, 4, 5, 6]

>>> a.extend([7, 8, 9])
>>> print(a)
[1, 2, 3, 7, 8, 9]

>>> c = a + b
>>> print(c)
[1, 2, 3, 4, 5, 6, 4, 5, 6]
Multiplier une liste (utile pour l'initialiser):
>>> a = [0] * 4
>>> print(a)
[0, 0, 0, 0]
Vérifier si un item est présent dans une liste:
thislist = ["alpha", "beta", "gamma"]
if "alpha" in thislist:
  print("Oui, 'alpha' est dans la liste") 
Liste d'éléments de types différents:
>>> s = [1, 3, 3.14, ("bon","jour"), [5, 7]]
>>> len(s)
5
>>> len(s[3])                   # tuple
2
>>> len(s[3][1])        # tuple - str "jour"
4
>>> s[4][1] = 666       # sous-liste - int 7
>>> s
[1, 3, 3.14, ('bon', 'jour'), [5, 666]]

Méthodes:

Méthode Description
append()
clear()
copy()
count()
extend()
index()
insert()
pop()
remove()
reverse()
sort()

Dernière mise à jour: May 12, 2019