Python yield用法

简介:

在函数中使用yield时,函数并不会返回数据,而是返回一个生成器对象(generator object),只有当循环遍历时,才会实际运行取得实际的值。

示例一是我看到一本书上的例子,示例二是我将它简化后的例子,功能上没有任何区别。

1
2
3
4
5
6
7
8
9
10
11
12
13
14
15
16
17
18
19
20
21
22
23
24
#示例一:
def  fileReadLines():
     seek  =  0
     while  True :
         with  open ( '/home/python/passwd' 'r' ) as f:
             f.seek(seek)
             data  =  f.readline()
             if  data:
                 seek  =  f.tell()
                 yield  data
             else :
                 return
                 
for  item  in  fileReadLines():
     print (item)
 
#示例二:
def  fileReadLine():
     with  open ( '/home/python/passwd' 'r' ) as f:
         for  line  in  f:
             yield  line
 
for  item  in  fileReadLine():
    print (item)

本文转自戴柏阳的博客博客51CTO博客,原文链接http://blog.51cto.com/daibaiyang119/1947290如需转载请自行联系原作者

daibaiyang119
相关文章
|
1月前
|
测试技术 Python
Python中的装饰器:概念、用法和应用
【4月更文挑战第6天】 装饰器是Python中的一个重要概念,它允许我们在不修改原始函数代码的情况下,增加或修改函数的行为。本文将深入探讨装饰器的概念、用法和应用,帮助读者更好地理解和使用这一强大的工具。
|
2天前
|
Python
【Python操作基础】——while语句用法和pass语句
【Python操作基础】——while语句用法和pass语句
|
2天前
|
Python
【Python操作基础】——for语句用法
【Python操作基础】——for语句用法
|
2天前
|
Python
【Python操作基础】——if语句用法
【Python操作基础】——if语句用法
|
5天前
|
数据采集 NoSQL 中间件
python-scrapy框架(四)settings.py文件的用法详解实例
python-scrapy框架(四)settings.py文件的用法详解实例
9 0
|
5天前
|
存储 数据采集 数据库
python-scrapy框架(三)Pipeline文件的用法讲解
python-scrapy框架(三)Pipeline文件的用法讲解
7 0
|
5天前
|
存储 数据采集 JSON
python-scrapy框架(二)items文件夹的用法讲解
python-scrapy框架(二)items文件夹的用法讲解
11 0
|
5天前
|
数据采集 前端开发 中间件
python-scrapy框架(一)Spider文件夹的用法讲解
python-scrapy框架(一)Spider文件夹的用法讲解
29 0
|
14天前
|
Python 容器
Python中的for循环用法详解,一文搞定它
Python中的for循环用法详解,一文搞定它
|
20天前
|
缓存 Python
Python 标准库functools高阶函数用法
Python 标准库functools高阶函数用法
40 1