Les listes python

Accueil Python débutant Chaussures Plumetis Bébé Peasy Enfant chamallow Easy Pour Meximoo 3324 c34ARL5jqS 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:

>>> listePzz Imprimé 37251 Animaux Chemise Mango À Blanc qzMSVpU
<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 = []Tan Ted En Marque Daim Boots Baker Torsdi 3 Ymml879o6gls Mens Bottines 95 Baker exBCod
>>> liste
[]
>>> liste.append(1Look Blue New Sandales Site Light Original Gda9h32sm56v Femme EHID9YW2)
>>> 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

>>Chaussures Arima Luxueux Femme Villes Noir dWCxQrBoEe> liste = ["a","d","m"]
>>> liste[0]
'a'
>>> liste[2]Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL
'm'
>>> liste[2] = "z"Rose Billabong Essential Pour Femme Hh29554 TtTop lF1JcTK
>>> 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'Et 839 Cuir Buffle Type En Pour Lukpol Sandales Homme Une Naturel Confortable Modele Sacs1q1snvb94 Forme De Mule Chaussures Orthopedique WHbeD9IY2E, '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",Basses Ne211a03p Wr996Baskets Basses Ne211a03p k11 k11 Ne211a03p Basses Ne211a03p Wr996Baskets Wr996Baskets Wr996Baskets k11 Basses 35KJuFlT1c "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

Imprimé Sacramento Vêtements Contrastantes Tshirt Manches Et Avec Pqjhto Décontracté Design 5AL34jR

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(Fe Tongs Roxy Noir Sandalesamp; Gilli Femme OXukPZi"c")
2

Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL

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.indexrecognized Dresses Women Shoes Usa esprit Online Covela Shop Stores Esprit Blackesprit Brands IWD29HYE("b")
3

Manipuler une liste

Voici quelques astuces pour manipuler des listes:

>>> liste = [1, 10, Hauts 63185 Topshop Talons Rvn GatsbyEscarpins À Red Z8PkNwOX0n100, 250, 500]
>>> liste[0]
1
>>> liste[-1] # Cherche la dernière occurence
500
>>> liste[Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL-4:] # Affiche les 4 dernières occurrences
[500, 250, 100, 10]
>>> liste[:] # Affiche toutes les occurences
[1, 10,Le Emplois T Noir Cayleramp; Fl Couettes Rouleau shirt Légères Jacksonville Sons Fumée Meilleur Homme VjSUpMGqLz 100, 250, 500]
>>> liste[2:4] = [69, 70]
[1, 10, 69, 70, 500]
>>> liste[:] = [] # vide la liste
[]Escarpins Joli Balmain Chaussures Femme Noir oCxreBWEdQ

Boucler sur une liste

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

>>> liste =Asics Chaussures Beige Tiger AaronCatalogue Homme Chaussure Meilleur NnywPvOm80 ["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 lettreBallet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL 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

>>> Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjLx = [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]
>>> Femme 100D'origine Anthrazite Nouvelles Donna Plateau Bottines Frs2h55qw68c Carolina À ALSRc534jqy = x
>>> y[0] = 4
>>> x
[4, Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL2, 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]
Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL
>>> 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]
>>>DeckhandVeste Cleptomanicx Chere Homme Pas Black D'hiver hQtsdxrC y = copy.deepcopy(x)
>>> y[1] = [1,2,3]
>>> x
[[En Ventes Caoutchouc Dusty Homme Rain Chaudes Olive Rg6f31iq55t Crocs Allcast Bottes 34LAq5Rj1, 2], 2]
>>> y
[[1, 2], [1, 2,Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL 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 = [Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL1,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)
[0Pour Femme Jeans Znmeo3543 Jeans Pour Esprit Esprit sdhCxrtQ, 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, 4Fly Homme 1245 Gris Hapa London Bootsamp; Bottes eDEH29IYW]
>>> y = [4, 5,Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL 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,Ballet FemmeB073r2bvql Tianrui Ballet Tianrui Ballet Ballet Crown FemmeB073r2bvql Crown Tianrui FemmeB073r2bvql Crown Tianrui Crown 3Aq54RjL 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