python中的yield使用方法

 更新时间:2014年02月11日 14:31:58   作者:  
这篇文章主要介绍了python中的yield使用方法,需要的朋友可以参考下

今天在看其他同事的代码时,发现一个没使用过的python关键字 :yield

      先问了一下同事,听他说了几句,有个模糊的印象,仅仅是模糊而已。于是自己去搜搜资料看。看了半天,逐渐清晰了。不过在工作机制以及应用上还是有点迷茫。嗯,先把初始接触的印象记下来吧。

      yield 简单说来就是一个生成器(Generator)。生成器是这样一个函数:它记住上一次返回时在函数体中的位置。对生成器函数的第二次(或第 n 次)调用跳转至该函数中间,而上次调用的所有局部变量都保持不变。

      你看到某个函数包含了yield,这意味着这个函数已经是一个Generator,它的执行会和其他普通的函数有很多不同。

      可能看到这里还是迷迷糊糊,先看一些实例吧:

复制代码 代码如下:

      def test( data_list ):

            for x in data_list:

                 yield x + 1

      data = [1,2,3,4]

      for y in test( data ):

           print y


      则输出结果为:

      2       3       4        5

      另外一种用法:

      handle = test(data)

      handle.next()     输出  2

      handle.next()     输出  3

      handle.next()     输出  4

      handle.next()     输出  5

      handle.next()     则会报错

      这只是 yield 的初步印象,接下来慢慢摸索吧。

相关文章

  • pytorch 实现冻结部分参数训练另一部分

    pytorch 实现冻结部分参数训练另一部分

    这篇文章主要介绍了pytorch 实现冻结部分参数训练另一部分,具有很好的参考价值,希望对大家有所帮助。一起跟随小编过来看看吧
    2021-03-03
  • Python SQL查询并生成json文件操作示例

    Python SQL查询并生成json文件操作示例

    这篇文章主要介绍了Python SQL查询并生成json文件操作,涉及Python基于mssqlhelper模块进行mysql数据库查询与json格式文件生成相关操作技巧,需要的朋友可以参考下
    2018-08-08
  • python爬取豆瓣电影TOP250数据

    python爬取豆瓣电影TOP250数据

    这次以豆瓣电影TOP250网为例编写一个爬虫程序,并将爬取到的数据(排名、电影名和电影海报网址)存入MySQL数据库中。
    2021-05-05
  • Python3视频转字符动画的实例代码

    Python3视频转字符动画的实例代码

    这篇文章主要介绍了Python3视频转字符动画的实例代码,代码简单易懂,非常不错,具有一定的参考借鉴价值,需要的朋友可以参考下
    2019-08-08
  • matlab绘制局部放大图图文教程

    matlab绘制局部放大图图文教程

    这篇文章主要给大家介绍了关于matlab绘制局部放大图的相关资料,所谓局部放大即呈现子图,以显示局部细节,需要的朋友可以参考下
    2023-07-07
  • django创建css文件夹的具体方法

    django创建css文件夹的具体方法

    在本文里小编给大家总结的是关于django创建css文件夹的具体方法,对此有需要的朋友们参考下吧。
    2020-07-07
  • 如何在pycharm中配置pyqt5设计GUI操作教程

    如何在pycharm中配置pyqt5设计GUI操作教程

    这篇文章主要介绍了如何在pycharm中配置pyqt5设计GUI的操作教程,有需要的朋友可以借鉴参考下,希望大家可以多多交流,讨论相关问题共同提升
    2021-08-08
  • 关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)

    关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决)

    这篇文章主要介绍了关于Python不换行输出和不换行输出end=““不显示的问题(亲测已解决),本文给大家介绍的非常详细,对大家的学习或工作具有一定的参考借鉴价值,需要的朋友可以参考下
    2020-10-10
  • python正则表达式实例代码

    python正则表达式实例代码

    这篇文章主要介绍了python正则表达式的一些实例代码,方便学习python的朋友,需要的朋友可以参考下
    2020-03-03
  • Python如何实现MySQL实例初始化详解

    Python如何实现MySQL实例初始化详解

    这篇文章主要给大家介绍了关于Python如何实现MySQL实例初始化的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧。
    2017-11-11

最新评论