En Python, comment obtenir le dernier élément d'une liste ?
some_list[-1]
est le plus court et le plus pythique.
En fait, vous pouvez faire beaucoup plus avec cette syntaxe. La syntaxe some_list[-n]
récupère le n-ième avant-dernier élément. Ainsi, some_list[-1]
obtient le dernier élément, some_list[-2]
l'avant-dernier, etc, jusqu'à some_list[-len(some_list)]
, qui vous donne le premier élément.
Vous pouvez également définir des éléments de liste de cette manière. Par exemple :
>>> some_list = [1, 2, 3]
>>> some_list[-1] = 5 # Set the last element
>>> some_list[-2] = 3 # Set the second to last element
>>> some_list
[1, 3, 5]
Notez que si vous obtenez un élément de la liste par son index, vous obtiendrez une IndexError
si l'élément attendu n'existe pas. Cela signifie que some_list[-1]
lèvera une exception si some_list
est vide, car une liste vide ne peut pas avoir de dernier élément.
Si vos objets str()
ou list()
risquent d'être vides comme ceci : astr = ''
ou alist = []
, alors vous voudrez peut-être utiliser alist[-1 :]
au lieu de alist[-1]
pour la "similitude" des objets.
La signification de ceci est :
alist = []
alist[-1] # will generate an IndexError exception whereas
alist[-1:] # will return an empty list
astr = ''
astr[-1] # will generate an IndexError exception whereas
astr[-1:] # will return an empty str
La distinction qui est faite est que le retour d'un objet liste vide ou d'un objet str vide ressemble plus à un "dernier élément" qu'un objet exception.
Vous pouvez aussi le faire :
alist.pop()
Cela dépend de ce que vous voulez faire avec votre liste car la méthode pop()
supprimera le dernier élément.