首页 > 解决方案 > 第二次使用“反向”迭代器时的空列表

问题描述

为什么第二个打印命令给出一个空列表,而第一个给出正确的输出?

str1 = 'Hello'

str2 = reversed(str1)

print(list(str2))
print(list(str2))

输出:

['o', 'l', 'l', 'e', 'H']
[]

标签: pythonpython-3.x

解决方案


reversed是一个迭代器,迭代器只能被使用一次,这意味着一旦你迭代它们,你就不能再做一次了。

检查文档


推荐阅读