说,我有一个值列表:
>>> a = [1, 2, 3, 4]
如何通过切片使其包含最终值?我期待:
>>> a[4:]
[4]
而不是:
>>> a[4:]
[]
答案 0 :(得分:4)
切片索引从零开始
所以如果你有:
Exception
从>>> xs = [1, 2, 3, 4]
| | | |
V V V V
0 1 2 3 <-- index in xs
开始,你得到:
4
四是``xs`的长度,而不是最后一个索引!
但是,如果您从>>> xs[4:]
[]
开始切片(列表的最后一个索引):
3
请参阅:Data Structures
许多常见的计算机编程语言和软件系统实际上都是从零开始的,所以请阅读Zero-based Numbering
答案 1 :(得分:1)
Python索引零基于。最后一个元素是索引3,而不是4:
>>> a = [1,2,3,4]
>>> a[3:]
[4]
答案 2 :(得分:0)
a = [1,2,3,4]
a[-1:]
在python中,您可以从开始到结束迭代值 1,2,3,4
| | | |
0 1 2 3(或)
-4 -3 -2 -1
所以如果你想要列表的最后一个元素你可以使用[len(a)-1:]或[-1:]