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:]返回列表而不是元素?

4

3 回答 3

12

你需要做a[-1]才能得到最后一个项目。见下文:

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

将冒号放入其中使其对列表进行切片,而不是对其进行索引。

以下是列表和切片/索引的一些参考:

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

解释 Python 的切片符号

于 2013-10-04T16:00:36.510 回答
3

做就是了:

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

您正在对列表进行切片,但没有得到最后一项。

于 2013-10-04T16:01:00.340 回答
0

最简单的方法:

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

为什么 a[-1:] 返回一个列表而不是一个元素?

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

我们也可以use pop()。但它会从列表中删除最后一个元素。所以这取决于你想要做什么。

list.pop()
于 2015-06-20T17:54:49.797 回答