yield   执行以上代码,yield后面可以有返回值

next()  获取

next的使用次数,是你生成器中yield出现的次数

def p():
  print("ok")
  yield 18
  print("ok2")
  yield
  
n = p()
ret = next(n)  # 用next()去获取调用者n,遇到yield才执行以上代码后返回
print(ret)
next(n) # ------------运行结果
# ok
# 18
# ok2

------------------------------------------------------------------------------------------------------------

可以传入参数给yield

但首次传入参数必须是None

send()  传入

当send传入参数后,会自动使用一次next来执行yield以上代码

def s():
  print("AB")
  conn = yield
  print(conn)
  print('Hello')
  yield
   n = s()
n.send(None)  # 首次传入必须是None
next(n)
# --------------------运行结果
# AB
# None
# Hello
n = s()
next(n)
n.send(188)
# ---------------------运行结果
# AB
# 188
# Hello

最新文章

  1. 跟着老男孩教育学Python开发【第二篇】:Python基本数据类型
  2. 使用jenkins配置.net mvc网站进行持续集成三
  3. python :表单验证--对每一个输入框进行验证
  4. PHP连接MySQL的时候报错SQLSTATE[HY000] [2002] No such file or directory
  5. 大话设计模式-->模板方法设计模式
  6. iOS应用崩溃日志分析
  7. SQL Server 表所在的文件组
  8. android音乐播放器开发教程
  9. IE 坑爹的浏览器兼容模式
  10. Keli Linux与网络安全(2)——初探Keli
  11. rsyslog ~ 波浪号
  12. [置顶] 局部加权回归、最小二乘的概率解释、逻辑斯蒂回归、感知器算法——斯坦福ML公开课笔记3
  13. [Open Source] RabbitMQ 高可用集群方案
  14. java_final修饰符
  15. [转载] Java NIO教程
  16. 60、jQuery其余操作
  17. Latex 学习之旅(一)
  18. UnicodeEncodeError: 'gbk' codec can't encode character '\xbb' in position 30633: illegal multibyte sequence
  19. [转]Jquery 点击图片在弹出层显示大图
  20. CSU 2005 Nearest Maintenance Point(最短路+bitset)

热门文章

  1. jq-demo-tab切换
  2. 百度网盘Mac版如何分享链接?创建百度网盘 for Mac分享链接的方法
  3. 【JZOJ3294】【BZOJ4417】【luoguP3990】超级跳马
  4. 1、Go语言的介绍
  5. 在vue中使用handsontable
  6. POJ2406-Power Strings-KMP循环节/哈希循环节
  7. spring boot资源文件配置读取
  8. C++数据类型之字符型&转义字符
  9. Linux CPU负载状态:%us/%sy/%ni/%id/%wa/%hi/%si/%st含义
  10. Dribbble 流行的配色风格是什么?