否定列表索引?
可能重复:
解释切片符号
我试图理解下面的一段代码:
# node list
n = []
for i in xrange(1, numnodes + 1):
tmp = session.newobject();
n.append(tmp)
link(n[0], n[-1])
具体来说,我不明白索引-1
是指什么。 如果索引0
引用第一个元素,那么-1
是指什么?
负数表示你从右而不是左数起。 所以, list[-1]
指向最后一个元素, list[-2]
是倒数第二个,依此类推。
列表索引-x表示列表末尾的第x个项目,因此n[-1]
表示列表n
的最后一个项目。 任何好的Python教程都应该告诉你这一点。
除Python以外,很少有其他语言采用这种惯例是一种不寻常的惯例,但它非常有用; 在任何其他语言中,您将花费大量时间写入n[n.length-1]
来访问列表的最后一项。
上一篇: Negative list index?