假设我有以下列表:
list1 = [1, 2, 33, 51]
^
|
indices 0 1 2 3
如何获取该列表的最后一个索引,在本例中为3?
答案 0 :(得分:19)
len(list1)-1
绝对是可行的方法,但是如果你绝对需要一个具有返回最后一个索引的函数的list
,你可以创建一个继承自list
的类。
class MyList(list):
def last_index(self):
return len(self)-1
>>> l=MyList([1, 2, 33, 51])
>>> l.last_index()
3
答案 1 :(得分:10)
您的意思是len(list1)-1
吗?
如果您正在搜索其他方法,可以尝试list1.index(list1[-1])
,但我不建议使用此方法。您必须确保该列表中没有重复项。
答案 2 :(得分:4)
我猜你想要
last_index = len(list1) - 1
将在last_index
中存储3个。
答案 3 :(得分:4)
获取列表最后一个索引的最快,最快捷的方法是使用-1
作为索引编号,
例如:
my_list = [0, 1, 'test', 2, 'hi']
print(my_list[-1])
输出为:'hi'
。
索引-1
中,显示最后一个索引或末尾的第一个索引。
答案 4 :(得分:1)
您可以使用列表长度。最后一个索引将是列表的长度减去一个。
len(list1)-1 == 3
答案 5 :(得分:1)
以上所有答案都是正确的,但是
a = [];
len(list1) - 1 # where 0 - 1 = -1
更精确
a = [];
index = len(a) - 1 if a else None;
if index == None : raise Exception("Empty Array")
因为数组从0开始
答案 6 :(得分:0)
a = ['1', '2', '3', '4']
print len(a) - 1
3
答案 7 :(得分:-1)
list1[-1]
将返回列表的最后一个索引。
如果在数组索引之前使用减号,它将从末尾开始向下计数。 list1[-2] 将返回倒数第二个索引等。
重要的是 -0 只返回列表的“第一个”(第 0 个)索引,因为 -0 和 0 是相同的数字,