新手学习python,总会看到Iterable与Iterator,但是不能正确区分这两个,本菜鸟也是,今天就来聊聊二者的区别:

  Iterable:python中的列表,元组,字符串,迭代器等都属于这类,都可以用for来迭代

  Iterator:Iterator类型的数据不仅可以用for来迭代,而且还可以使用next(object)方法来获取下一个值(python有的版本也会用object.next())

总结就是可以用for来迭代读取的就是Iterable,可以用next()来获取下一个的就是Iterator,如上所示,Iterable包括了Iterator,二者可以通过函数iter()和list()来互相转换