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

好的响应式网站国际足联世界排名

好的响应式网站,国际足联世界排名,网站信息 订阅如何做,做微信的网站有哪些功能一、迭代器 1、迭代协议 一种是包含iter方法的,另一种是包含getitem方法的(比如str对象就没有iter方法,但是一样支持迭代),只要对象中包含了这两种方法的任意一种,那么这个对象就可以进行迭代操作&#x…

一、迭代器

1、迭代协议

一种是包含iter方法的,另一种是包含getitem方法的(比如str对象就没有iter方法,但是一样支持迭代),只要对象中包含了这两种方法的任意一种,那么这个对象就可以进行迭代操作,即实现了迭代协议

2、迭代器协议

①实现了迭代器协议的对象(实现方式:对象内部定义了一个iter()方法)

②对象实现了__next__方法

③__next__方法返回了某个数值(一般情况下需要的是返回这个对象特定的数字,且按照一定的顺序进行依次返回)

④__next__方法需要在值取值完的时候,抛出StopIteration的错误信息

3、可迭代对象

只要内部实现了迭代协议的,就是一个可迭代对象,可迭代对象可以进行相关的迭代操作,如:for循环、map函数等,所有迭代器都是可迭代对象

4、代码示例

# 可迭代对象:可以for循环遍历的都是可迭代对象,内部只实现了__iter__方法
li = [1,2,3,4]
list()li1 = iter(li) # iter() __iter__
#迭代器 内部实现了__iter__之外,还实现了__next__
print(next(li1))
print(next(li1))

二、生成器

1、生成器概念

生成器并不会一次性把所有数据都生成出来,生成器中保存的只是一个生成数据的相关算法,并不会把将数据都生成,只是在需要数据的时候用生成器去生成一条数据即可,节约了大量的内存空间

2、生成器表达式举例

# () 生成器表达式
tu = (i for i in range(1000))  # 生成器对象
a = next(tu)  # next函数用于取值
print(a)  # 第一个元素
print(next(tu))  # 第二个元素

3、通过yield自定义生成器

# 通过yield自定义生成器
def gen_fun():yield 100print('Hello Wanzi')yield 1000yield 2000
res = gen_fun() # 返回生成器对象
print(next(res))
print(next(res))
print(next(res))

三、生成器和迭代器的区别

生成器属于迭代器的一种,生成器<迭代器<可迭代对象,且比迭代器多了三种方法

1、send():发送数据
2、close():关闭生成器

3、throw gen.throw(Exception,"Method throw called!")

http://www.dtcms.com/wzjs/338041.html

相关文章:

  • 毕业设计代做网站代码邯郸seo推广
  • 为什么做图书管理网站百度建站多少钱
  • 株洲做网站多少钱宁波seo服务快速推广
  • 太原网站建设世纪优创seo小白入门
  • 电子商务网站建设计划北京seo服务商找行者seo
  • 手机娱乐网站制作seo怎么做关键词排名
  • 网站模板批量下载手机百度浏览器
  • 网站建设页头的设计火爆产品的推广文案
  • wordpress整站无法打开谷歌官方网站
  • 建设一个网站的费用构成如何建网站不花钱
  • 姑苏网站制作网站seo的优化怎么做
  • 国内十大网站建设sem是什么缩写
  • 文山专业网站建设培训机构有哪些
  • 阳江网签搜索引擎优化seo名词解释
  • 保定哪有做网站的2022最近十大的新闻热点
  • h5响应式网站建设中文域名查询官网
  • 东莞seo网站优化运营推广之家官网
  • 个人电子商务网站建设网络营销策略名词解释
  • 公司搜索seo广州抖音seo
  • 网站中的二级菜单怎么做23app营销策略
  • 网站前端语言企业管理软件管理系统
  • 视频制作流程seo软件哪个好
  • 广州网站建设联享科技百度账号人工客服
  • 技术网站建设在线一键建站系统
  • 济南网站制作工作室seo优化主要工作内容
  • 试玩网站怎么做北京网站优化服务
  • 哪个网站可以领单做效果图南宁seo专员
  • 华邦网站15个常见关键词
  • 免费做app网站有哪些官网制作公司
  • 做网站就必须要开公司吗seo项目经理