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

关于生成器的问题

开始始终不明白生成器的执行顺序以及取值的变化.直接上代码.

def add(n, i):
    return n + i


def test():
    for i in range(4):
        yield i


g = test()

for n in [2, 10]:
    g = (add(n, i) for i in g)
    # g = (add(n, i), add(n, i), add(n, i), add(n, i)) --> 10, 11, 12, 13
    # g = (add(n, i) for i in add(n, i), add(n, i), add(n, i), add(n, i))) --> 10 + 10, 10 + 11, 10 + 12, 10 + 13

print(list(g))  # 只有执行list的时候才会执行生成器,否则只是保留一个内存地址.
# 生成器只能去一次
# 生成器在不找他时始终不执行
# 当他执行的时候,要以执行时候的所有变量值为准

 

转载于:https://www.cnblogs.com/chenrun/p/9205501.html

相关文章:

  • Oracle 调用存储过程执行CRUD的小DEMO
  • webpack 项目实战
  • 做创业狼之前请看看这篇文章
  • json字符串转JSONObject和JSONArray以及取值
  • php计算时间差的方法
  • 前端路由实现-history
  • SQLServer 2008 删除、压缩日志
  • 【51nod1472】取余最大值
  • elasticsearch系列四:搜索详解(搜索API、Query DSL)
  • Oracle 安装报错 [INS-06101] IP address of localhost could not be determined 解决方法
  • OPENGL学习笔记整理(五):着色语言
  • Python3学习笔记16-错误和异常
  • 轻量级node-cache源码分析一波
  • 迭代器失效
  • OSChina 周六乱弹 —— 假如你被熊困到树上
  • angular组件开发
  • JAVA 学习IO流
  • Java面向对象及其三大特征
  • js正则,这点儿就够用了
  • LeetCode29.两数相除 JavaScript
  • Magento 1.x 中文订单打印乱码
  • miaov-React 最佳入门
  • Python利用正则抓取网页内容保存到本地
  • SpriteKit 技巧之添加背景图片
  • Travix是如何部署应用程序到Kubernetes上的
  • TypeScript实现数据结构(一)栈,队列,链表
  • 从零搭建Koa2 Server
  • 简单数学运算程序(不定期更新)
  • 两列自适应布局方案整理
  • 聊聊flink的BlobWriter
  • 免费小说阅读小程序
  • 如何使用Mybatis第三方插件--PageHelper实现分页操作
  • 吐槽Javascript系列二:数组中的splice和slice方法
  • 译自由幺半群
  • 与 ConTeXt MkIV 官方文档的接驳
  • 在Unity中实现一个简单的消息管理器
  • 哈罗单车融资几十亿元,蚂蚁金服与春华资本加持 ...
  • 选择阿里云数据库HBase版十大理由
  • ​ ​Redis(五)主从复制:主从模式介绍、配置、拓扑(一主一从结构、一主多从结构、树形主从结构)、原理(复制过程、​​​​​​​数据同步psync)、总结
  • ​学习一下,什么是预包装食品?​
  • #if #elif #endif
  • #我与Java虚拟机的故事#连载16:打开Java世界大门的钥匙
  • (1)Android开发优化---------UI优化
  • (10)工业界推荐系统-小红书推荐场景及内部实践【排序模型的特征】
  • (14)目标检测_SSD训练代码基于pytorch搭建代码
  • (20050108)又读《平凡的世界》
  • (Matalb分类预测)GA-BP遗传算法优化BP神经网络的多维分类预测
  • (Redis使用系列) Springboot 使用Redis+Session实现Session共享 ,简单的单点登录 五
  • (ZT)一个美国文科博士的YardLife
  • (二)PySpark3:SparkSQL编程
  • (附源码)计算机毕业设计SSM基于java的云顶博客系统
  • (三)终结任务
  • (深度全面解析)ChatGPT的重大更新给创业者带来了哪些红利机会
  • (深入.Net平台的软件系统分层开发).第一章.上机练习.20170424
  • (一)kafka实战——kafka源码编译启动