zoukankan      html  css  js  c++  java
  • day18 迭代器协议和for循环工作机制

    1. 迭代器协议:对象必须提供一个next方法,执行方法要么返回迭代器中的下一项,要么就引起一个StopIteration异常,以终止迭代(只能往后走,不能往前退)。
    2. 可迭代对象:实现了迭代器协议的对象(实现方式:对象内部定义了一个iter()方法)
    3. 协议是一种约定,可迭代对象实现了迭代器协议,Python的内部工具(如for循环,sum,min,max函数等)使用迭代器协议访问对象。

    for循环的实质是遵循迭代器协议,将文件转换成可迭代对象;序列类型字符串、列表、元组都有下标;但是非序列类型像字典、集合、文件对象没有下标的情况下while循环不可用,所以for循环就是基于迭代器协议提供了一个统一的可以便利所有对象的方法,即在便利之前,先调用对象的_iter_方法将其转换成一个迭代器,然后使用迭代器协议去实现循环访问,这样所有的对象就都可以通过for循环来遍历了,所以说for循环是无所不能的。

  • 相关阅读:
    如何做兼容性测试
    python批量转换excl为csv
    mysql删除用户后再次创建用户报错
    xadmin
    CORS跨域资源共享
    drf自定义公共组件
    luffy项目前端初始化
    luffy项目后端初始化
    企业级项目的环境准备
    base64编码的使用
  • 原文地址:https://www.cnblogs.com/douyunpeng/p/12692953.html
Copyright © 2011-2022 走看看