鉴于-1追溯到第一项中的元组,和切片的结束索引的索引之前停止,为什么Python的元组切片
x=(1,2,3,4,5)
x[0:-1]
产量
(1, 2, 3, 4)
代替停在第一个5之前的指数?
感谢
鉴于-1追溯到第一项中的元组,和切片的结束索引的索引之前停止,为什么Python的元组切片
x=(1,2,3,4,5)
x[0:-1]
产量
(1, 2, 3, 4)
代替停在第一个5之前的指数?
感谢
-1不回去的第一项中的一个元组
x=(1,2,3,4,5)
x[-1]
产生
5
切片是这样工作的:
x[start : end : step]
在你的榜样,start = 0
,所以它会从头开始,end = -1
这意味着年底将元组的最后一个元素(不是第一个)。您没有指定step
,因此它的默认值为1
。
这link from Python docs可能会有所帮助,有一些切片的例子。
它有助于为之间想切片点的元素
x = ( 1, 2, 3, 4, 5 )
| | | | | |
0 1 2 3 4 5
-5 -4 -3 -2 -1
你也可以说最终指数是非包含的。 –
任何python序列中的-ve值表示:
Val = len(sequence)+(-ve value)
从/到len(sequence)+(-ve value)
开始/停止,取决于我们指定的内容。
[这个问题已经被回答过,并且非常透彻。](http://stackoverflow.com/questions/509211/pythons-slice-notation) – 2014-01-15 04:41:51