1874 votos

¿Cómo conseguir el último elemento de una lista?

En Python, ¿cómo se obtiene el último elemento de una lista?

2856voto

Sasha Chedygov Puntos 36783

some_list[-1]es el más corto y más Pythonico.

De hecho, puedes hacer mucho más con esta sintaxis. La sintaxis some_list[-n] obtiene el enésimo último elemento. Así que some_list[-1] ...obtiene el último elemento, some_list[-2] consigue el penúltimo, etc., todo el camino hasta some_list[-len(some_list)] que te da el primer elemento.

También puede establecer elementos de la lista de esta manera. Por ejemplo:

>>> 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]

231voto

DevPlayer Puntos 996

Si tus objetos str() o list() pueden terminar vacíos como tal:astr = ''oalist = []entonces puede que quieras usaralist[-1:]en lugar dealist[-1]para el objeto "igualdad".

El significado de esto es:

alist = []
alist[-1]   # will generate an IndexError exception whereas 
alist[-1:]  # will return an empty list
astr = ''
astr[-1]    # will generate an indexError excepttion whereas
astr[-1:]   # will return an empty str

Donde la distinción que se hace es que devolver un objeto de la lista vacía o un objeto str vacío es más bien un "último elemento", como un objeto de excepción.

86voto

Taurus Olson Puntos 1354

También puedes hacerlo:

alist.pop()

Depende de lo que quieras hacer con tu lista porque el método pop() borrará el último elemento.

65voto

Atul Arvind Puntos 4264

La forma más simple de mostrar el último elemento en Python es

>>> list[-1:] # returns indexed value
    [3]
>>> list[-1]  # returns value
    3

hay muchos otros métodos para lograr tal objetivo, pero estos son cortos y dulces de usar.

-1voto

Abdul Majeed Puntos 49

Otra forma más simple de mostrar el último elemento en Python es

>>> l = [1,2,3,'last-element']
>>> print l[len(l)-1]
last-element

Iteramos.com

Iteramos es una comunidad de desarrolladores que busca expandir el conocimiento de la programación mas allá del inglés.
Tenemos una gran cantidad de contenido, y también puedes hacer tus propias preguntas o resolver las de los demás.

Powered by:

X