How to obtain the last index of a list?
Matthew Barrera
Suppose I've the following list:
list1 = [1, 2, 33, 51] ^ |
indices 0 1 2 3How do I obtain the last index, which in this case would be 3, of that list?
18 Answers
len(list1)-1 is definitely the way to go, but if you absolutely need a list that has a function that returns the last index, you could create a class that inherits from list.
class MyList(list): def last_index(self): return len(self)-1
>>> l=MyList([1, 2, 33, 51])
>>> l.last_index()
3 0 The best and fast way to obtain the content of the last index of a list is using -1 for number of index ,
for example:
my_list = [0, 1, 'test', 2, 'hi']
print(my_list[-1])Output is: 'hi'.
Index -1 shows you the last index or first index of the end.
But if you want to get only the last index, you can obtain it with this function:
def last_index(input_list:list) -> int: return len(input_list) - 1In this case, the input is the list, and the output will be an integer which is the last index number.
1Did you mean len(list1)-1?
If you're searching for other method, you can try list1.index(list1[-1]), but I don't recommend this one. You will have to be sure, that the list contains NO duplicates.
I guess you want
last_index = len(list1) - 1 which would store 3 in last_index.
You can use the list length. The last index will be the length of the list minus one.
len(list1)-1 == 3 2 all above answers is correct but however
a = [];
len(list1) - 1 # where 0 - 1 = -1to be more precisely
a = [];
index = len(a) - 1 if a else None;
if index == None : raise Exception("Empty Array")since arrays is starting with 0
2a = ['1', '2', '3', '4']
print len(a) - 1
3 2 list1[-1]will return the last index of your list.
If you use minus before the array index it will start counting downwards from the end. list1[-2] would return the second to last index etc.
Important to mention that -0 just returns the "first" (0th) index of the list because -0 and 0 are the same number,
1