python中iter的用途是什么?

时间:2013-07-01 10:11:32

标签: python iteration keyword

在python中使用iter函数有什么用?

而不是:

for i in range(8):
  print i

我还可以使用iter

for iter in range(8):
  print iter

2 个答案:

答案 0 :(得分:6)

首先:iter() normally is a function。您的代码使用具有相同名称的本地变量掩盖该函数。您可以使用任何内置Python对象来执行此操作。

换句话说,您在此处使用iter()功能。您正在使用碰巧使用相同名称的for循环变量。你可以把它叫做dict,它不再是关于字典而是关于Guido选择的咖啡。从for循环的角度来看,您的两个示例之间存在差异。

否则,您可以使用iter()函数生成iterator type;一个具有.next()方法的对象(Python 3中为.__next__())。

for循环通常会为您执行此操作。当使用可以生成迭代器的对象时,for语句将使用与其上调用iter()的C等价物。如果您使用该对象执行其他特定于迭代器的内容,则只能使用iter()

答案 1 :(得分:0)

iter()是一个Python内置函数,它返回一个迭代器对象,它是一个表示某些数据的对象。例如,它可以与迭代器上的.next()方法一起使用,它将为您提供下一个元素 - 当没有更多元素时,将发生StopIteration。