如何获取列表的最后一个元素?
首选哪种方式?
alist[-1]
alist[len(alist) - 1]
如何获取列表的最后一个元素?
首选哪种方式?
alist[-1]
alist[len(alist) - 1]
当前回答
找不到任何提及此的答案。所以补充道。
您也可以尝试some_list[~0]。
那是波浪符号
其他回答
您还可以执行以下操作:
last_elem = alist.pop()
这取决于您想对列表做什么,因为pop()方法将删除最后一个元素。
如果str()或list()对象最终可能为空:astr=“”或alist=[],那么您可能希望使用alist[-1:]而不是alist[-1]来表示对象“sameness”。
其意义在于:
alist = []
alist[-1] # will generate an IndexError exception whereas
alist[-1:] # will return an empty list
astr = ''
astr[-1] # will generate an IndexError exception whereas
astr[-1:] # will return an empty str
区别在于,返回空列表对象或空str对象更像是“最后一个元素”,而不是异常对象。
您只需获取并放入[-1]索引即可。例如:
list=[0,1,2]
last_index=list[-1]
print(last_index)
您将得到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'
好的,但几乎每种语言中的通用项[len(items)-1]呢?这是IMO获取最后一个元素的最简单方法,因为它不需要任何蟒蛇知识。