负面清单指数?

时间:2012-07-06 18:41:01

标签: python list

  

可能重复:
  Explain slice notation

我正在尝试理解以下代码:

# node list
n = []
for i in xrange(1, numnodes + 1):
    tmp = session.newobject();
    n.append(tmp)
link(n[0], n[-1])

具体来说,我不明白索引-1所指的是什么。如果索引0引用第一个元素,那么-1引用什么?

2 个答案:

答案 0 :(得分:151)

负数表示您从右侧而不是左侧计数。因此,list[-1]指的是最后一个元素,list[-2]是倒数第二个,依此类推。

答案 1 :(得分:9)

列出-x的索引表示列表末尾的第x项,因此n[-1]表示列表n中的最后一项。任何好的Python教程都应该告诉你这个。

这是一个不同寻常的惯例,除了Python之外几乎没有其他语言采用,但它非常有用;在任何其他语言中,您将花费大量时间编写n[n.length-1]来访问列表的最后一项。