嗖嗖有公众号吗?哪个是嗖嗖的官方公众号?

人生苦短,我选Python

我们前面聊过了为什么要使用迭代器,各位同学应该还有印象吧(说没有的就太过分了)。

列表太大的话会占用过大的内存,可以使用迭代器,只拿出需要使用的部分。

生成器的设计原则和迭代器是相似的,如果需要一个非常大的集合,不会将元素全部都放在这个集合中,而是将元素保存成生成器的状态,每次迭代的时候返回一个值。

比如我们要生成一个列表,可以采用如下方式:

如果我们生成的列表非常的巨大,比如:

报错了,报错信息提示我们存储异常,并且整个程序运行了相当长一段时间。友情提醒,这么大的列表创建请慎重,如果电脑配置不够很有可能会将电脑卡死。

如果我们使用生成器就会非常方便了,而且执行速度嗖嗖的。

那么,我们使用了生成器以后,怎么读取生成器生成的数据呢?

当然是和之前的迭代器一样的拉,使用 next() 函数:

但是,这种使用方法我们并不知道什么时候会迭代结束,所以我们可以使用 for 循环来获取每生成器生成的具体的元素,并且使用 for 循环同时也无需关心最后的 StopIteration 异常。

0
 
generator 非常的强大,本质上, generator 并不会取存储我们的具体元素,它存储是推算的算法,通过算法来推算出下一个值。


如果推算的算法比较复杂,用类似列表生成式的 for 循环无法实现的时候,还可以用函数来实现。


比如我们定义一个函数,emmmmmm,还是简单点吧,大家领会精神:








这里使用到了关键字 yieldyieldreturn 非常的相似,都可以返回值,但是不同的是 yield 不会结束函数。


我们调用几次这个用函数创建的生成器:





可以看到,当我们使用 next() 对生成器进行一次操作的时候,会返回一次循环的值,在 yield 这里结束本次的运行。但是在下一次执行 next() 的时候,会接着上次的断点接着运行。直到下一个 yield ,并且不停的循环往复,直到运行至生成器的最后。


还有一种与 next() 等价的方式,直接看示例代码吧:





接下来要介绍的这个方法就更厉害了,不仅能迭代,还能给函数再传一个值回去:





上面讲了这么多,可能各位还没想到生成器能有什么具体的作用吧,这里我来提一个——协程。


在介绍什么是协程之前先介绍下什么是多线程,就是在同一个时间内可以执行多个程序,简单理解就是你平时可能很经常的一边玩手机一边听音乐(毫无违和感)。





协程更贴切的解释是流水线,比如某件事情必须 A 先做一步, B 再做一步,并且这两件事情看起来要是同时进行的。








因为 while 条件设置的是永真,所以这个循环是不会停下来的。


这里我们定义了两个生成器,并且在一个循环中往复的调用这两个生成器,这样看起来就是两个任务在同时执行。


最后的协程可能理解起来稍有难度,有问题可以在公众号后台问我哦~~~

 
本系列的所有代码小编都会放在代码管理仓库 Github 和 Gitee 上,方便大家取用。



如果我的文章对您有帮助,请扫码关注下作者的公众号:获取最新干货推送:)
}

居民身份证、户口迁移等户政类业务

当然是在郑州警民通线上预约办!

不会操作?来!小编教你

郑州警民通“户政预约”操作流程

居民身份证业务、登记、注销户口、迁移、变更更正等。

郑州市中原区、二七区、管城区、惠济区、金水区、郑东新区、航空港区、高新区、经开区、上街区、荥阳市、中牟县、新郑市、巩义市、登封市、新密市派出所户籍室。

步骤一:点击下方链接,关注郑州警民通公众号;

郑州警民通宣传郑州互联网+便民服务309篇原创内容

步骤二:进入页面后在底部菜单栏点击【快速办理】,选择【户政预约】,即可进入预约;

步骤三:选择辖区派出所户籍室,并选择需要办理的业务类型和时间段,点击【立即预约】;

步骤四:填写预约人信息,包括身份证号、手机号码,点击【预约】并确定预约信息后查看预约信息;

提醒:预约后,如不能按时到线下办理,记得“取消预约”,把名额留给其他需要办理业务的人。

如您需要预约办理相关业务,搜一搜“警务便民地图”,就能查询到辖区派出所户籍室了。

郑州警民通在手,办事不愁在这里,郑州人想要的便利

都能给您安排得明明白白

为大家提供更贴心的便民服务哒

“户政预约”,你学会了吗?

需要办理相关业务的小伙伴,记得优先选择在线预约、在线办理哦!转发提醒更多人!

版权声明:本文内容由互联网用户自发贡献,该文观点仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌抄袭侵权/违法违规的内容, 请发送邮件至 86345@/wp-content/uploads/daa64e--b78c-97af37c2ba08-480x300.jpg">

}

我要回帖

更多关于 微信公众号推广 的文章

更多推荐

版权声明:文章内容来源于网络,版权归原作者所有,如有侵权请点击这里与我们联系,我们将及时删除。

点击添加站长微信