美文网首页
可迭代对象和迭代器类型

可迭代对象和迭代器类型

作者: 庄周幻梦 | 来源:发表于2021-01-05 21:14 被阅读0次

可迭代对象(Iterable):凡是可以使用for循环遍历的都是可迭代对象
数据类型实现了迭代协议:(类里面定义了iter方法)

迭代器类型(Iterator):也是可迭代对象
数据类型实现了迭代器协议:

  1. 类里面定义了iter方法(迭代协议)
  2. 类里面定义了next方法
    迭代器能够使用next方法进行迭代操作

所有的可迭代对象->可以转换为迭代器:
li=iter([11,22,33])

from collections.abc import Iterable, Iterator

List = [11, 22, 33]
print(isinstance(List, Iterable))   # True
print(isinstance(List, Iterator))   # False

List = iter(List)
print(isinstance(List, Iterable))   # True
print(isinstance(List, Iterator))   # True

for循环实现机制:
迭代器+while循环实现

def func(a):
    tor = iter(a)
    while True:
        try:
            print(next(tor))
        except StopIteration:
            break
List = [11, 22, 33]
func(List)

相关文章

  • 可迭代对象和迭代器类型

    可迭代对象(Iterable):凡是可以使用for循环遍历的都是可迭代对象数据类型实现了迭代协议:(类里面定义了i...

  • 3-1 如何实现可迭代对象和迭代器对象(1)

    for循环的背后:确保in后边为可迭代对象 可迭代对象可以由内置函数iter得到一个迭代器对象注意:可迭代和迭代器...

  • python——迭代器,闭包

    迭代器 可迭代对象 可以用for循环的数据类型 判断是否可迭代 生成器一定是迭代器,可用next()的也可以迭代。...

  • Python中的可迭代对象和迭代器对象

    Python中的可迭代对象和迭代器对象是两种不同的东西,可迭代对象是Iterable,迭代器对象是Iterator...

  • Python编程技巧

    高效处理数据类型方法: 可迭代对象和迭代器对象: 读写取excel文件 Microsoft Excel是Micro...

  • Python基础-16生成器-迭代器

    16.生成器-迭代器     可循环迭代的对象称为可迭代对象,迭代器和生成器函数是可迭代对象,在Python中提供...

  • Python技巧:对象迭代与反迭代

    Welcome To My Blog 一.实现可迭代对象和迭代器 实例化iter()由可迭代对象得到迭代器通过给i...

  • Python语言基础之——迭代器生成器和模块

    1.迭代器 1.什么是迭代器(iter) 迭代器是容器型数据类型,只能通过类型转换和生成器来获得迭代器对象迭代器存...

  • 迭代器

    一、迭代器可迭代的(可迭代对象):可迭代对象都是可迭代的。如:str、list、dict、tuple、文件对象等等...

  • Python进阶 - 高性能计算之协程

    迭代器 可迭代对象 什么是可迭代对象 可迭代对象就是对象的类中实现了__iter__方法的对象。对于可迭代对象,可...

网友评论

      本文标题:可迭代对象和迭代器类型

      本文链接:https://www.haomeiwen.com/subject/ogawoktx.html