一、环境

  python 3.6

二、yield 说明

  yield 是一个生成器,可以用于迭代。也是一个类似 return 的关键字,迭代一次遇到yield时就返回yield后面(右边)的值。

重点是:下一次迭代时,从上一次迭代遇到的yield后面的代码(下一行)开始执行。

三、代码实战

# -*- coding: utf-8 -*-## for 循环调用
## 第一次循环 n = 2, i = 0; yield i*2 = 0 打印 for i = 0 ,停在这个位置
## 第二次循环 执行下一个语句执行,打印 after i = 0 ; i= 1 满足循环条件 yield i*=2 ,打印 for i = 2
## 第三次循环 执行下一个语句执行,打印 after i = 1; i= 2 不满足循环条件 退出 。打印 othersdef yield_kim(n): # 0 1for i in range(n):yield i*2  # yield就类似 return 返回一个值,并且记住这个返回的位置,下次迭代就从这个位置后开始print("after i=",i)print("<--------------Others-------------->")## for cycle
for i in yield_kim(2): print("for i=",i)#第一次输出  for i = 0
#第二次输出  after i= 0 ; for i= 2
#第三次输出  after i= 1 ; <--------------Others-------------->## 普通调用----------------------
def yield_kim2(n):print("n =",n) a = yield n*2print("a = ",a)k = yield_kim2(2)
k2 = next(k)   # 执行后 yield n*2 表达式的值为 4 ,a 还未赋值#输出 n = 2

View Code

四、结果截图

转载于:https://www.cnblogs.com/kimbo/p/9454211.html

Python yield 用法相关推荐

  1. python yield 用法详解

    python yield 生成器 文章目录 python yield 生成器 1. 背景 2. 如何生成斐波那契數列 清单 1. 简单输出斐波那契數列前 N 个数 清单 2. 输出斐波那契數列前 N ...

  2. python yield用法_Python中迭代器和生成器的区别?

    公众号新增加了一个栏目,就是每天给大家解答一道Python常见的面试题,反正每天不贪多,一天一题,正好合适,只希望这个面试栏目,给那些正在准备面试的同学,提供一点点帮助! 小猿会从最基础的面试题开始, ...

  3. python yield用法

    python中yield的用法详解--最简单,最清晰的解释_mieleizhi0522的博客-CSDN博客_yield

  4. python yield用法举例说明

    1  yield基本用法 典型的例子: 斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到.1 2 3 5 8-- def fab(ma ...

  5. python yield用法总结

    从最常见的裴波那切数列说起 斐波那契(Fibonacci)數列是一个非常简单的递归数列,除第一个和第二个数外,任意一个数都可由前两个数相加得到.用计算机程序输出斐波那契數列的前 N 个数是一个非常简单 ...

  6. [Python]yield用法入门

    包含yield表达式的函数是特殊的函数,叫做生成器函数(generator function),被调用时将返回一个迭代器(iterator),调用时可以使用next或send(msg).它的用法与re ...

  7. Python yield 的基本概念和用法

    之前解析MQTT协议时,需要做一个等分字节流的操作,其中用到了yield关键字,如下: def get_var_length(hstring):m = 1v = 0for element in chu ...

  8. python基本使用-python基本用法笔记合集

    PYTHONPATH PYTHONPATH是python moudle的搜索路径.即import xxx会从$PYTHONPATH寻找xxx. 中文编码问题 coding=utf-8 查看导入的包的路 ...

  9. python with用法

    @python with用法 python中with可以明显改进代码友好度,比如: [python] view plaincopyprint? with open('a.txt') as f: pri ...

最新文章

  1. ubuntu下编译安装PHP
  2. Vmware提示:host usb device connections disabled-(vmware 主机已禁用 usb 设备连接)
  3. windows mobile开发循序渐进(5)移动应用程序与webservice之间的数据交互
  4. jsp实现mysql存储过程_JSP调用MySQL存储过程收藏
  5. Device is not certified by Google
  6. Lua语言学习-垃圾回收
  7. tcp3次握手、4次挥手
  8. linux ubuntu安装 mono,在 Ubuntu Server 上安装配置 Mono 生产环境
  9. 笨方法“学习python笔记之字典
  10. 同步与异步阻塞与非阻塞
  11. Android中JNI 的一些常用说明 JNI_OnLoad registerNatives registerNativeMethods
  12. [转]C#用SHA对密码加密
  13. apache ii评分和死亡率_危重病人APACHE II评分表
  14. VMware安装windows2003操作系统
  15. Matlab图像分割(U-Net)
  16. H5页面点击图片自动全屏代码
  17. 浅谈大数据和人工智能
  18. flex布局: 每行显示n个div块,第n+1个自动换行显示
  19. VC++6.0显示此程序存在兼容问题解决办法
  20. wxpython中表格顶角怎么设置_46-wxpython 4 使用 grid 展示表格

热门文章

  1. 将EXE安装包重新封装成MSI格式
  2. 把struts2的struts.xml配置文件分解成多个配置文件
  3. Android app按三层架构+MVC整理(重构)代码可行吗
  4. Asp.net控件之异同:HTML控件与Web服务器控件
  5. android Button源码分析
  6. OK6410裸机开发之LED灯
  7. 用YACC/LEX 设计计算机语言
  8. ISR:中断服务程序需要满足的要求
  9. 操作系统:多处理器编程-- 蒋炎岩老师
  10. 设计模式:迭代器模式(Iterator Pattern)