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

展会网站建设市场营销专业课程

展会网站建设,市场营销专业课程,西安电商网站建设,oss做网站迁移一、生成器定义和作用 定义:Python中,一边循环一边计算的机制,生成器对象也是迭代器对象,支持for循环、next()方法…等。作用:循环的过程中不断推算出后续的元素,这样就不必创建完整的list,从而…

一、生成器定义和作用

  1. 定义:Python中,一边循环一边计算的机制,生成器对象也是迭代器对象,支持for循环、next()方法…等。
  2. 作用:循环的过程中不断推算出后续的元素,这样就不必创建完整的list,从而节省大量的空间

二、生成器创建方法

1、简单生成器:将列表推导式的[ ]改为()

# 列表生成式
_list = [i for i in range(10)]
print(type(_list))  # <class 'list'>
print(_list)  # [0, 1, 2, 3, 4, 5, 6, 7, 8, 9]
# 生成器
_generator = (i for i in range(10))
print(type(_generator))  # <class 'generator'>
print(_generator)  # <generator object <genexpr> at 0x7fbcd92c9ba0>
# 生成器对象取值
print(f"第一次迭代数据是:{_generator.__next__()}")  # 第一次迭代数据是:0
print(f"第二次迭代数据是:{next(_generator)}")  # 第二次迭代数据是:1
# 注意从第三个元素开始了!
for x in _generator:  # for循环只能隐式的触发了StopIteration异常,就终止迭代了,但是在程序中不会显示出来print(x)  # 2,3,4,5,6,7,8,9

2、函数对象生成器:函数中使用yield关键字,函数就变成了一个generator

  • yield和return语句使用方法类似,但是普通函数运行到return语句则直接返回代码不再执行;而生成器对象会运行到yield后返回,再下次调用next(),会从yield语句后继续执行。
def gen_generator():yield "start"for i in range(2):yield iyield "end"gen = gen_generator()
print(f"从gen对象取到的第一个值为:{next(gen)}")  # 从gen对象取到的第一个值为:start
print(f"从gen对象取到的第二个值为:{next(gen)}")  # 从gen对象取到的第二个值为:0
print(f"从gen对象取到的第三个值为:{next(gen)}")  # 从gen对象取到的第三个值为:1
print(f"从gen对象取到的第四个值为:{next(gen)}")  # 从gen对象取到的第四个值为:end
# print(f"从gen对象取到的第五个值为:{next(gen)}")  # 抛出StopIteration异常# 等同于
gen2 = (i for i in ["start", 0, 1, "end"])
for v in gen2:print(v)

 三、yield生成器高级应用

send()方法概念:暂时保留先不进行,等待需要时再进行。作用与next()作用相似。

send()使用方式:传递值给yield返回(可以指定yield想返回啥就返回啥),如果传None,则等同于next(generator)。

  • send()和next()区别:
    • send(value)可以传递value给yield。
    • next()不能传递特定的值,只能传递None进去。
def genterator_test():while True:print("--1-")num = yield 100print("--2--", "num=", num)g = genterator_test()
# 等同于next(generator)
print(g.send(None)) # --1-# 100# 传递值给yield返回
print(g.send(11))   # --2-- num= 11# --1-# 100# 传递值给yield返回
print(g.send(22))   # --2-- num= 22# --1-# 100

http://www.hkea.cn/news/836177/

相关文章:

  • 做箱包关注哪个网站泰州seo平台
  • 如何给网站做流量站长工具seo
  • 桂林网站开发建设推广任务接单平台
  • 化妆品 网站建设案例seo超级外链工具免费
  • 网站建设的广告语seo自动工具
  • 有专门做市场分析的网站么太原关键词优化报价
  • 网站文化建设搜索引擎推广的常见形式有
  • wordpress分类目录消失泸州网站seo
  • 易云巢做网站公司seo入门到精通
  • 新津网站建设百度ai助手入口
  • 做学校网站什么文案容易上热门
  • 网站开发技术包括郑州网站关键词排名
  • 网站开发预算怎么算百度竞价ocpc
  • 成都锐度设计公司怎么样优化大师怎么提交作业
  • 租用网站服务器东莞市网站建设
  • 馆陶县网站网站运营管理
  • 西双版纳傣族自治州医院seo搜索优化网站推广排名
  • wordpress站点网址小吃培训2000元学6项
  • 郑州网站制作天强科技seo百度发包工具
  • 江阴市住房与建设局网站seo工资多少
  • wordpress image.php南宁百度首页优化
  • 谢家华做网站百度指数与百度搜索量
  • wordpress 安装 ubuntu整站优化代理
  • 做公司网站协议书模板下载百度竞价推广公司
  • 福田蒙派克6座二手值多少钱重庆seo点击工具
  • 有了域名 怎么做网站外贸网站推广方法之一
  • 审美网站长春网站建设路
  • 网站 管理系统域名查询注册信息查询
  • 专业网站设计发展前景推广网站软文
  • 怎么建设seo自己网站网站优化推广教程