2013-10-04 3 views
3

Очень простой вопрос, у меня есть список, как так:Получить последний элемент из списка, как целое число/плавать

a = [0,1,2,3,4,5,7,8] 

и мне нужно, чтобы получить последний пункт в этом списке, как поплавок или целое число. Если я:

print a[0], a[4] 

я 1 5, это хорошо, но если я пытаюсь получить последний элемент с:

print a[-1:] 

Я получаю список[8] вместо числа8. Я знаю, что я мог бы просто использовать print a[len(a)-1], но он чувствует себя излишним, и теперь у меня также есть сомнения в том, почему a[-1:] возвращает список вместо элемента?

ответ

12

Чтобы получить последний товар, вам необходимо сделать a[-1]. Смотрите ниже:

>>> a = [0,1,2,3,4,5,7,8] 
>>> a[-1] 
8 
>>> 

Имея двоеточие там делает его кусочек списка, не индексировать его.

Вот некоторые ссылки на списки и нарезка/индексировать их:

http://docs.python.org/2/tutorial/introduction.html#lists

Explain Python's slice notation

+0

Не могу поверить, что я об этом не думал. Спасибо за немедленный ответ. Приветствия. – Gabriel

3

Вобще:

>>> a = [0,1,2,3,4,5,7,8] 
>>> a[-1] 
8 

Вы были нарезка список не получает последний пункт.

0

Простейший способ:

>>> a = [0,1,2,3,4,5,7,8] 
>>> a[-1] 
8 

почему это [-1:] возвращает список вместо элемента?

>>> list[-1:] # returns list 
    [8] 
>>> list[-1] # returns value 
    8 

мы также можем use pop(). Но он удаляет последний элемент из списка. Это зависит от того, что вы хотите сделать.

list.pop() 
Смежные вопросы