当前位置: 首页 > news >正文

金华网站建设制作国外ps素材网站

金华网站建设制作,国外ps素材网站,中小企业建站模板,国际大型门户网站什么是迭代器 迭代器的作用:访问容器中的元素 首先要了解什么是Iterablelterable(可迭代的) 字符串、列表、元组、字典都是lterable,都可以放到for循环语句中遍历 lterable类型的定义中一定有一个_iter_方法iter 方法必须返回一个lterator(迭代器) 可以…

什么是迭代器

迭代器的作用:访问容器中的元素
首先要了解什么是Iterable

lterable(可迭代的)

字符串、列表、元组、字典都是lterable,都可以放到for循环语句中遍历
lterable类型的定义中一定有一个_iter_方法iter 方法必须返回一个lterator(迭代器)·
可以对lterable调用内置函数iter,本质就是调用Iterable内部的 iter 方法,得到一个迭代

iterator

lterator继承了lterable,所以lterator一定是可迭代的对象,反之则不然。
lterator类型的定义中一定有一个_next__方法next 方法用于返回lterator中的下一个值
·可以对lterator调用内置函数next,本质就是调用Iterator内部的next方法·当lterator所有值都已经取完,再对其调用next时,会抛出Stoplteration异常
from typing import Iterable,Iteratorname = "王麻子"
girlfrilends = ["照明", "小赵", "走直落"]
print(isinstance(name, Iterator))           # 判断name是否是Iterator类型
print(isinstance(girlfrilends, Iterator))   # 判断girlfrilends是否是Iterator类型print(isinstance(name, Iterable))           # 判断name是否是Iterable类型
print(isinstance(girlfrilends, Iterable))   # 判断girlfrilends是否是Iterable类型

运行结果
在这里插入图片描述

# 对可迭代对象Iterable调用内置的函数iter,获取他的迭代器
i1 = iter(name)
print(i1, isinstance(i1, Iterator))
i2 = iter(girlfrilends)
print(i2, isinstance(i2, Iterator))

运行结果:
在这里插入图片描述

# 可以对迭代器调用next内置函数,获取其中的下一个值
print(next(i1), end="")
print(next(i1), end="")
print(next(i1), end="")
print(next(i1), end="")  # 当迭代器中无值可以迭代后,再调用next函数,会抛出StopIteration异常

运行结果:
在这里插入图片描述

# 自定义迭代器
"""自定义迭代器Iterator本质上:就是定义一个类,这个类中必须定义__iter--、--next-设计:书架类(迭代器),对书架进行迭代,可以每次返回一本书
"""
from typing import Iterable,Iterator
class BookShelf:def __init__(self):self.books = ["西游记", "水浒传", "红楼梦", "三国演义"]self.curr_index = -1  # 当前已经迭代到的值的索引def __iter__(self):"""用于返回迭代器"""return selfdef __next__(self):if self.curr_index == len(self.books)-1:raise StopIterationself.curr_index += 1print(self.curr_index)return self.books[self.curr_index]if __name__ == '__main__':bs = BookShelf()print(bs, isinstance(bs, Iterable))print(bs, isinstance(bs, Iterator))for i in bs:print(i)print(next(bs))print(next(bs))print(next(bs))print(next(bs))print(next(bs)) # 调用的时候索引为3

运行结果:
在这里插入图片描述

http://www.yayakq.cn/news/235462/

相关文章:

  • 怎样做电子商务网站修改wordpress登录背景图
  • 网站群建设规范wordpress 下载数据表插件
  • 商务网站建设实训过程建设企业网站多少钱
  • 惠州市惠城区建设局网站做网站哪家最便宜
  • 手机端网站建设广告词wordpress手机滑动导航菜单
  • 大连网站建设过程网站推广公司电话
  • 网站建设开票税率网站开发规划书
  • 个人如何开网站张家港企业网站
  • 案例学——网页设计与网站建设室内设计3d模型素材网站
  • 惠州网站建设哪家强互联网推广营销都选隐迅推
  • 龙门惠州网站建设做导购网站有哪些
  • php企业网站 源码品牌网站建设渠道
  • 功能类网站狗贩子怎么做网站卖狗
  • 南京做网站seowordpress怎么添加接口
  • 网站建设项目安排计划表东道设计公司官网招聘
  • 石家庄晋州网站建设wordpress贴心插件
  • 做网站 商标分类郑州男科医院排名哪家医院好
  • 中信建设 官方网站上海专业的网络推广
  • 微网站免费制作静态网站seo怎么做
  • 网站建网站建设公司做网站的空间是什么
  • 临沂专业网站建设公司电话网络营销是什么 能做什么
  • dede网站改成自适应淄博百度
  • 四川住房和城乡建设九大员网站福州快速优化排名
  • 学网站建设能赚钱吗1小时赚8000元游戏
  • 石家庄网站开发建设电商网站开发工具
  • 新手做网站的几个必要步骤快速网站排名提升
  • 网站访问流量怎么赚钱零库存品牌童装杭州网站建设
  • 怎么做网站推广临沂软装设计公司介绍
  • 凡客建站手机版下载婚恋网站建设
  • 宁波专业定制网站建设app哪个网站开发好