1、迭代协议
迭代协议是指:对象需要提供next方法,它要么返回迭代中的下一项,要么就引起StopIteration异常,以终止迭代。
2、可迭代对象
可迭代对象是指:实现了迭代器协议的对象
3、协议
协议是指一种约定,可迭代对象需要实现的迭代器协议,python的内置工具(如for循环,sum,min,max函数等)使用迭代器协议访问对象。
for循环可以用来便利各种可迭代对象,比如数组、文件对象,但是for循环本身并不直到它便利的是一个文件对象,它只管使用迭代器访问对象即可。