美文网首页
2019-05-26派森学习第184天

2019-05-26派森学习第184天

作者: 每日派森 | 来源:发表于2019-05-26 21:01 被阅读0次

生成器

python中如果生成一个很大的列表,比如有100万个元素,这样会很浪费内存。可以通过生成器一边循环,一边计算接下来是哪个元素,这样就是生成器。

创建生成器有很多方法:

方法1:将列表生成式的[]变成圆括号()就可以啦

0

我们可以直接打印出list的每一个元素,但我们怎么打印出generator的每一个元素呢?

如果要一个一个打印出来,可以通过next()函数获得generator的下一个返回值

1

当然,每次都手动next()太烦了,也可以用for遍历:

2

所以,我们创建了一个generator后,基本上永远不会调用next(),而是通过for循环来迭代它,并且不需要关心StopIteration的错误。

方法2:含有yield

这就是定义generator的另一种方法。如果一个函数定义中包含yield关键字,那么这个函数就不再是一个普通函数,而是一个generator

相关文章

  • 2019-05-26派森学习第184天

    生成器 python中如果生成一个很大的列表,比如有100万个元素,这样会很浪费内存。可以通过生成器一边循环,一边...

  • 2019-05-26

    2019-05-26 姓名:郭祥华 组别:315期六项精进努力一组 【日精进打卡第526】 【知~学习】 背诵《...

  • 你是幸福的,我就是快乐的

    2019-05-26 【日精进打卡第417天】 【今日学习】 诵读《道德经》0遍 共5遍 《卓越的管理者》 《水浒...

  • 打开善眼,收获幸福!

    字数 948 · 阅读 0 2019-05-26 22:16 系统诵读经典第127周第7天,共计889天。 读经方...

  • 2019-06-20派森学习第187天

    通过restlet插件将参数post进web,然后程序执行成功:

  • 2019-06-21派森学习第188天

    修改的程序又出现了一个小BUG: 通过print测试,发现问题是index2workpackage_id函数处理问...

  • 2019-03-06派森学习第108天

    今天想把插入排序做出来。 插入排序(Insertion-Sort)的算法描述是一种简单直观的排序算法。它的工作原理...

  • 2019-03-07派森学习第109天

    早上来的路上又理了一下思路, 然后, 不到5分钟就写出来昨天的插值算法, 可能是昨天也急着写好, 所以导致反而写不出来。

  • 2019-03-05派森学习第107天

    毕竟以后要学习机器学习,少不了算法。 今天就自己开始写一些经典的算法吧,把经典的算法用python写一下。 从冒泡...

  • 2019-02-28派森学习第102天

    昨天把txt生成excell程序解决后,解放了很多劳动力啊。今天发起文章就容易多了。 科技解放人类。 接下来,需要...

网友评论

      本文标题:2019-05-26派森学习第184天

      本文链接:https://www.haomeiwen.com/subject/qnnftctx.html