zoukankan      html  css  js  c++  java
  • python中的for循环(迭代器机制)

    python中的for循环:

    1 x = 'hello'
    2 for i in x:#iter_x=x.__iter__()
    3     print(i)#iter_x.__next__()
    iter_l =x.__iter__()#遵循迭代器协议,生成可迭代对象
    print(iter_l.__next__())#for循环和索引没关系 基于迭代器机制
    对列表的索引:【超出索引值报错】
    1 l = [1,2,3]
    2 print(l[0])
    3 index = 0
    4 while index<len(l):
    5     print(l[index])
    6     index+=1

    对集合的索引:【超出索引值报错】

    1 s = {1,2,3,4}
    2 iter_s = s.__iter__()
    3 print(iter_s.__next__())
    4 print(iter_s.__next__())
    5 print(iter_s.__next__())
    6 print(iter_s.__next__())

    对字典的索引:【超出索引值则报错】

    1 dict = {'name':'alex','age':18}
    2 iter_d =dict.__iter__()
    3 print(iter_d.__next__())
    4 print(iter_d.__next__())
    5 # print(iter_d.__next__())#报错:dict默认索引值为key
    6 # print(iter_d.__next__())#报错:dict默认索引值为key

    对文件的索引:

    python 中for循环的强大之处在于可以遍历序列和非序列类型 例如文件
    1 f = open('字节方式与文件.txt','r+',encoding='utf-8')
    2 text_f =f.__iter__()
    3 print(text_f.__next__(),end='')
    4 print(text_f.__next__())
    5 print(text_f.__next__())
    6 f.close()

     补充:next()内置函数

    1 list=['xx1','xx2','xx3','xx4']
    2 iter_1=l.__iter__()
    3 #print(iter_l.__next__())
    4 #print(iter_l.__next__())
    5 #print(iter_l.__next__())
    6 #print(iter_l.__next__())
    7 print(next(iter_1))#next()python内置函数 调用iter_l.__next__()【数据类型的内置函数】
  • 相关阅读:
    列表
    CENTOS安装xwindow
    查看LINUX系统的配置
    LINUX开启SAMBA服务
    oracle linux 7 yum报错解决:COULD NOT RESOLVE HOST: YUM.ORACLE.COM
    ORACLE百分比分析函数RATIO_TO_REPORT() OVER()
    用matlab计算线性回归问题
    OL7.6上RPM方式安装Oracle 19c
    使用vnc远程操控Centos7.6
    OPATCH在线补丁
  • 原文地址:https://www.cnblogs.com/gl-gl/p/9142058.html
Copyright © 2011-2022 走看看