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

    一、递归和迭代

    举个例子

    递归:假如我去问路,路人甲看我长得盛世容颜,但是他不知道,他就去帮我问路人乙去了,路人乙跟路人甲说我也不知道,但一看路人甲美若天仙,就说,我去帮你问问路人丙,。。。完了可能得到答案

    迭代:依然是问路,我去问路人甲,路人甲一看我长得车祸现场,就说我不知道,你去问问路人乙去吧。。。

    二、什么是迭代器协议?

    1.迭代器协议是指:对象必须提供一个next方法,执行该方法要么返回迭代中得下一项,要么引起一个stoplteration异常,以终止迭代

    2.可迭代对象:实现了迭代器协议的对象,

    3.迭代是一种约定。可迭代对象实现了迭代器协议,python的内置工具如for循环,max,min,sum。等函数,使用迭代器对象访问

    三、python中强大的for循环机制

    # x='hello'
    # # print(dir(x))
    # iter_test=x.__iter__()
    #
    # print(iter_test)
    # print(iter_test.__next__())
    # print(iter_test.__next__())
    # print(iter_test.__next__())
    # print(iter_test.__next__())
    # print(iter_test.__next__())
    # print(iter_test.__next__())
    
    # l=[1,2,3]
    # for i in l:  #i_l=l.__iter_()  i_l.__next__()
    #     print(i)
    
  • 相关阅读:
    数值的整数次方
    二进制中1的个数
    SpingBoot 启动自动给MongoDB建库
    Java 依赖冲突的解决办法
    Http协议
    你被限流了吗?
    LeetCode 783. 二叉搜索树节点最小距离
    Leetcode 687. 最长同值路径
    LeetCode 784. 字母大小写全排列
    LeetCode 面试题 08.06. 汉诺塔问题
  • 原文地址:https://www.cnblogs.com/charon2/p/10388836.html
Copyright © 2011-2022 走看看