Python 中如何获取列表的最后一个元素?

Python 获取列表最后一个元素用负索引 my_list[-1],最简洁。注意空列表会抛 IndexError,可用切片 my_list[-1:] 或先判断。

最佳实践
Python 中如何获取列表的最后一个元素?封面

用负索引:my_list[-1]。这是 Python 的惯用法,-1 表示倒数第一个元素。注意空列表会抛 IndexError

基本用法

my_list = [1, 2, 3, 4, 5]
last = my_list[-1]
print(last)  # 5

负索引的规律:-1 是最后一个,-2 是倒数第二个,以此类推。字符串、元组同样适用。

空列表的安全处理

# 方式一:先判断
if my_list:
    last = my_list[-1]

# 方式二:切片(空列表返回空列表而非报错)
last = my_list[-1:]   # [5];空列表返回 []

反例:用 len() 计算

my_list[len(my_list) - 1]   # 能工作但啰嗦,不推荐

负索引就是为这个场景设计的,没必要手动算长度。

常见问题(FAQ)

Q:修改 my_list[-1] 会影响原列表吗?
A:会。my_list[-1] = 99 直接改最后一个元素,负索引同样支持赋值。

Q:如何取最后 N 个元素?
A:用切片 my_list[-3:] 取最后 3 个;不足 3 个时返回全部,不报错。

Q:deque 呢?
A:collections.deque 也支持下标,d[-1] 有效;另外 deque 有 pop()/popleft() 用于弹出两端元素。

获取专属方案

联系我们

加入社区

微信扫码
加入官方交流群

立即体验

在线开通,按量计费,真正的云服务!

立即开始

选择观测云版本

代码托管平台