reversed() 反转序列
最后更新:2026-09-22
reversed() 反转序列
reversed(seq) 返回一个反向迭代器;可用于 list、tuple、str、range 等实现了 __reversed__ 或支持序列协议的对象。
| 分类 | 内置函数 |
|---|---|
| 类型 | 内置函数 |
| Python 版本 | all |
📝 语法
reversed(sequence)
⚙️ 参数
| sequence 必选 | 序列(list/tuple/str/range 等)或实现 __reversed__ 的对象。 |
|---|
返回值:返回反向迭代器,可配合 list() 或 for 循环使用。
💥 异常
TypeError— 对象不支持序列协议且未实现 __reversed__ 时抛出。
▶ 示例
编辑下方代码,点击运行,在输出面板查看结果:
运行结果:
[3, 2, 1]
o l l e h
🏷️ 相关内置函数
💡 相关案例
更多实战案例即将上线,敬请期待。
❓ 常见问题
Qreversed() 返回什么?
A返回反向迭代器,需 list(reversed([1, 2, 3])) 才得到 [3, 2, 1],它本身不是列表。
Qreversed() 和 lst[::-1] 有什么区别?
Alst[::-1] 返回新的完整列表(数据拷贝,O(n) 内存);reversed(lst) 是惰性迭代器,不复制数据,只适合从头到尾遍历一遍。
Q为什么 reversed({1, 2, 3}) 报 TypeError?
A集合无序、没有“反转”概念;reversed() 只支持序列(list/tuple/str/range)或实现了 __reversed__ 的对象。
Qreversed() 和 sorted(lst, reverse=True) 一样吗?
A不一样。reversed 是“保持原顺序倒着输出”不排序;sorted(reverse=True) 是“按大小降序排序”。[3,1,2] 前者得 [2,1,3],后者得 [3,2,1]。