【发布时间】:2021-11-27 00:57:53
【问题描述】:
下面是我用 Python 写的简单程序
Animal = ['tiger','lion','dog','cat']
xyz = iter(Animal)
print(next(xyz))
输出是
tiger
现在我读到iter() 方法指向可迭代的第一个元素,即'tiger',因此第二行将使xyz 指向'tiger' & 然后在我使用next 时在第三行中它应该转到'lion' 并打印它为什么不这样做?
我知道我正在做一些概念上的错误,我什至无法理解 xyz 或迭代器是变量对象还是其他东西。谁能详细说明一下?
【问题讨论】:
-
“变量对象或其他东西”是什么意思? Python 在技术上没有变量,它具有指向对象(值)的标识符(名称)。见Facts and myths about Python names and values
-
“现在我读到 iter() 方法指向可迭代的第一个元素,即“老虎”,”不,这听起来不正确。简单地说,
iter从一个可迭代对象中返回一个迭代器。
标签: python python-3.x list iterator iteration