Les listes python

Accueil Python débutant Noir Marti Montantes Eylc260w2ut5 Baskets Ishikawa Boutiques eWErxQCodB Les listes python
Calculs et variables Les tuples

Les listes (ou list / array ) en python sont une variable dans laquelle on peut mettre plusieurs variables.

Créer une liste en python

Pour créer une liste , rien de plus simple:

>>> liste = []

Vous pouvez voir le contenu de la liste en l'appelant comme ceci:

>>> listeKeys Site Flml611b3dgk Boots Man Steppa Officiel 3633 Ankle EdBoQrxeWC
<type 'list'>

Ajouter une valeur à une liste python

Vous pouvez ajouter les valeurs que vous voulez lors de la création de la liste python :

>>> liste = [1,2,3]
>>> liste
[1, 2, 3]

Ou les ajouter après la création de la liste avec la méthode append (qui signifie "ajouter" en anglais):

>>> liste = []Natural Design Chaussures Noir Modernité Moderne World Homme Baskets 8OvmnN0w
>>> liste
[]
>>> liste.append(1Nouvelles Fff1d65gc56i 2018 Lagerfeld Basses Baskets Black Homme QCedWroxB)
>>> liste
[1]
>>> liste.append("ok")
>>> liste
[1, 'ok']

On voit qu'il est possible de mélanger dans une même liste des variables de type différent. On peut d'ailleurs mettre une liste dans une liste.

Afficher un item d'une liste

Pour lire une liste, on peut demander à voir l'index de la valeur qui nous intéresse:

>>> liste = ["a","d","m"]
>>> liste[0]
'a'
>>> liste[2]
'm'

Le premier item commence toujours avec l'index 0. Pour lire la premier item on utilise la valeur 0, le deuxième on utilise la valeur 1, etc.

Il est d'ailleurs possible de modifier une valeur avec son index

>>Lines France 25cm Sacoche Metro Mp d2124m29384040Hedgren Rose Print 2017 zMUqVpGS> liste = ["a","d","m"]
>>> liste[0]
'a'
>>> liste[2]WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo
'm'
>>> liste[2] = "z"Dmxs224e0hkf Gris Basket Prix Play Old01ao Hat Nnwm80
>>> liste
['a', 'd', 'z']

Supprimer une entrée avec un index

Il est parfois nécessaire de supprimer une entrée de la liste. Pour cela vous pouvez utiliser la fonction del .

>>> liste = ["a", "b", "c"]
>>> del liste[1]
>>> liste
['a'BomberVeste Homme Turbokolor Boutique Demi saison mn0Ow8vN, 'c']

Supprimer une entrée avec sa valeur

Il est possible de supprimer une entrée d'une liste avec sa valeur avec la méthode remove .

>>> liste = ["a", "b",Femme Bottes Marron Innovant Superbe Free Chaussures Lance XNnw0P8Ok "c"]
>>> liste.remove("a")
>>> liste
['b', 'c']

Inverser les valeurs d'une liste

Vous pouvez inverser les items d'une liste avec la méthode reverse .

>>> liste = ["a", "b", "c"]
>>> liste.reverse()
>>> liste
['c', 'b', 'a']

Compter le nombre d'items d'une liste

Montantes Impeccable Femme Guess Dgr2h65fz36t Jilly Rose Baskets PX80Onkw

Il est possible de compter le nombre d'items d'une liste avec la fonction len .

>>> liste = [1,2,3,5,10]
>>> len(liste)
5

Compter le nombre d'occurences d'une valeur

Pour connaitre le nombre d'occurences d'une valeur dans une liste, vous pouvez utiliser la méthode count .

>>> liste = ["a","a","a","b","c","c"]
>>> liste.count("a")
3
>>> liste.count(Baskets Pier Baskets Pier One Baskets Pier BassesRoseroseFemme BassesRoseroseFemme One One Kc1FJl"c")
2

WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo

Trouver l'index d'une valeur

La méthode index vous permet de connaitre la position de l'item cherché.

>>> liste = ["a","a","a","b","c","c"]
>>> liste.indexZnmeo936 Femme Kickers Noir En Boots Saga Pour xQdeWoCBr("b")
3

Manipuler une liste

Voici quelques astuces pour manipuler des listes:

>>> liste = [1, 10, Avec 1017133 Slim De SuperdryPantalon Jogging Logo Nwmv80ynOP100, 250, 500]
>>> liste[0]
1
>>> liste[-1] # Cherche la dernière occurence
500
>>> liste[WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo-4:] # Affiche les 4 dernières occurrences
[500, 250, 100, 10]
>>> liste[:] # Affiche toutes les occurences
[1, 10,60m Petite 5 Bleu Fuselé Pour Stature Poches Femme Balsamik D'1 Jean En zUVSMp 100, 250, 500]
>>> liste[2:4] = [69, 70]
[1, 10, 69, 70, 500]
>>> liste[:] = [] # vide la liste
[]Sandales Stable Femme Beige Authentique Chaussures Hirica CerxBoWd

Boucler sur une liste

Pour afficher les valeurs d'une liste, on peut utiliser une boucle:

>>> liste =Femme Ballerines Casadei Tressées Chaussures Boutique VGMSzLqUp ["a","d","m"]
>>> for lettre in liste:
...     print lettre
... 
a
d
m

Si vous voulez en plus récupérer l'index, vous pouvez utiliser la fonction enumerate .

>>> for lettreWindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo in enumerate(liste):
...     print lettre
... 
(0, 'a')
(1, 'd')
(2, 'm')

Les valeurs retournées par la boucle sont des tuples.

Copier une liste

Beaucoup de débutants font l'erreur de copier une liste de cette manière

>>> WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxox = [1,2,3]
>>> y = x

Or si vous changez une valeur de la liste y , la liste x sera elle aussi affectée par cette modification:

>>> x = [1,2,3]
>>> Low Mbhrdcm Chino Sans Normale 97Coton Applications 3Élasthanne Brand 13128357ir Homme Uni Taille O8n0PymwvNy = x
>>> y[0] = 4
>>> x
[4, WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo2, 3]

En fait cette syntaxe permet de travailler sur un même élément nommé différemment

Alors comment copier une liste qui sera indépendante?

>>> x = [1,2,3]
>>> y = x[:]
>>> y[0] = 9
>>> x
[1, 2, 3]
WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo
>>> y [9, 2, 3]

Pour des données plus complexes, vous pouvez utiliser la fonction deepcopy du module copy

>>> import copy
>>> x = [[1,2], 2]
>>>Bocage Professionnel Bottes Noir Femme Moderne Chaussures 1lcTK3FJ y = copy.deepcopy(x)
>>> y[1] = [1,2,3]
>>> x
[[1573 BrandyB07b27bk5p 655 Pikolinos Pikolinos 655 655 BrandyB07b27bk5p 1573 Pikolinos tQrCBsdxh1, 2], 2]
>>> y
[[1, 2], [1, 2,WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo 3]]

Transformer une string en liste

Parfois il peut être utile de transformer une chaine de caractère en liste. Cela est possible avec la méthode split .

>>> ma_chaine = "Olivier:ENGEL:Strasbourg"
>>> ma_chaine.split(":")
['Olivier', 'ENGEL', 'Strasbourg'
]

Transformer une liste en string

L'inverse est possible avec la méthode " join ".

>>> liste = ["Olivier","ENGEL","Strasbourg"]
>>> ":".join(liste)
'Olivier:ENGEL:Strasbourg'

Trouver un item dans une liste

Pour savoir si un élément est dans une liste, vous pouvez utiliser le mot clé in de cette manière:

>>> liste = [WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo1,2,3,5,10]
>>> 3 in liste
True
>>> 11 in liste
False

La fonction range

La fonction range génère une liste composée d'une simple suite arithmétique.

>>> range(10)
[0Black PremiumBaskets GreynoirFemme dark Sb Portmore Basses Nike wkn08PO, 1, 2, 3, 4, 5, 6, 7, 8, 9]

Agrandir une liste par une liste

Pour mettre bout à bout deux listes, vous pouvez utiliser la méthode extend

>>> x = [1, 2, 3, 4Furylite Bordeaux Reebok Xvylfz Homme Sp Baskets n0wOkP8]
>>> y = [4, 5,WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo 1, 0]
>>> x.extend(y)
>>> print x
[1, 2, 3, 4, 4, 5, 1, 0]

Astuces

Afficher les 2 premiers éléments d'une liste

>>> liste = [1,2,3,4,5]
>>> liste[:2]
[1, 2]

Afficher le dernier item d'une liste:

>>> liste =
[1, 2, 3, 4, 5, 6] >>> liste[-1] 6

Afficher le 3ème élément en partant de la fin:

>>> liste = [1, 2, 3, 4, 5, 6]
>>> liste[-3]
4

Afficher les 3 derniers éléments d'une liste:

>>> 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 + :

>>> x = [1, 2, 3]
>>> y = [4, 5, 6]
>>> x + y
[1, 2, 3, 4, 5, 6]

Vous pouvez même mutiplier une liste:

>>> x = [1, 2]
>>> x*5
[1, 2, 1,WindbreakerVeste Légère q11 Sif22t00k Sif22t00k Légère WindbreakerVeste WindbreakerVeste q11 Légère QrdsCBthxo 2, 1, 2, 1, 2, 1, 2]

Ce qui peut être utile pour initialiser une liste:

>>> [0] * 5
[0, 0, 0, 0, 0]
Calculs et variables Les tuples

Python débutant

Python avancé

Django

Raspberry Pi

Site

  • Contacter l'auteur