如何获取列表的最后一个元素?
首选哪种方式?
alist[-1]
alist[len(alist) - 1]
如何获取列表的最后一个元素?
首选哪种方式?
alist[-1]
alist[len(alist) - 1]
当前回答
还可以使用长度获取最后一个元素:
last_elem = arr[len(arr) - 1]
如果列表为空,您将得到一个IndexError异常,但也可以通过arr[-1]得到该异常。
其他回答
如果执行my_list[-1],则返回列表的最后一个元素。负序列索引表示从数组末尾开始的位置。负索引表示从末尾开始,-1表示最后一项,-2表示最后第二项,等等。
lst[-1]是最好的方法,但对于一般的可迭代项,请考虑more_itertools.last:
Code
import more_itertools as mit
mit.last([0, 1, 2, 3])
# 3
mit.last(iter([1, 2, 3]))
# 3
mit.last([], "some default")
# 'some default'
为了避免“IndexError:列表索引超出范围”,可以使用这段代码。
list_values = [12, 112, 443]
def getLastElement(lst):
if len(lst) == 0:
return 0
else:
return lst[-1]
print(getLastElement(list_values))
奇怪的是还没有人发布这个:
>>> l = [1, 2, 3]
>>> *x, last_elem = l
>>> last_elem
3
>>>
打开包装。
您可以使用~运算符从end获取第i个元素(从0开始索引)。
lst=[1,3,5,7,9]
print(lst[~0])