python生成器的表达式形式
来源:互联网 发布:手机数据永久删除 编辑:程序博客网 时间:2024/05/22 10:27
Python版本:3.6.1
python生成器的表达式形式 可以将返回值放入一个列表 从而不停的获取值
#!/usr/bin/env python# -*- coding:utf-8 -*-#Author:xp#blog_url: http://blog.csdn.net/wuxingpu5/article/details/71209731#模拟grepimport os#windows下路径是两个斜杠 需要加r raw string 原生字符串#g=os.walk(r'D:\code\py\py3\Coursepy\L05\a')# # for i in g:# # print(i)# def search(search_path):# g=os.walk(search_path)# for par_idr,_,files in g: #循环取出路径与文件# for file in files:# file_abs_path=r'%s%s' %(par_idr,file)# print(file_abs_path)# search(r'D:\code\py\py3\Coursepy\L05\a')#====================================================#再次更改为yield模式 实现可以不停的sendimport osdef init(func): def wrapper(*args,**kwargs): res =func(*args,**kwargs) next(res) return res return wrapper@initdef search(): while True: search_path=yield g=os.walk(search_path) for par_idr,_,files in g: #循环取出路径与文件 for file in files: file_abs_path=r'%s%s' %(par_idr,file) print(file_abs_path)x=r'D:\code\py\py3\Coursepy\L05\a'g=search()g.send(x)@initdef opener(): while True: file_abs_path=yield with open(file_abs_path,encoding='utf-8') as f:# target.send(file_abs_path,f) passo=opener()o.send('3.py')
具体应用参见下篇 模拟grep 过滤
阅读全文
0 0
- python生成器的表达式形式
- python--生成器:yield的表达式形式,send
- Python的生成器表达式与生成器函数
- Python生成器与生成器表达式
- python 迭代器 生成器 生成器表达式
- python生成器表达式
- Python生成器表达式
- Python 进阶_生成器 & 生成器表达式
- Python 进阶_生成器 & 生成器表达式
- Python 进阶_生成器 & 生成器表达式
- python生成器函数以及生成器表达式
- 【python】对列表的过滤, 列表解析,生成器表达式
- [转]Python里有趣的列表解析和生成器表达式
- Python里有趣的列表解析和生成器表达式
- 深入理解python的生成器表达式和列表解析
- Python中的列表推导和生成器表达式的使用
- python--迭代器,生成器,三元表达式,列表解析,生成器表达式
- python 列表表达式和生成器表达式
- 解决Gradle DSL method not found: 'compile()'错误的方法
- struts2
- Android插件化:从入门到放弃
- mysql 存储过程 通过存储过程的方式简化sql操作
- 发送有序广播
- python生成器的表达式形式
- 27. Remove Element
- 深度学习 —— 卷积神经网路 CNN
- 如何确定Kafka的分区数、key和consumer线程数
- Caffe——python接口学习(2):生成solver文件
- oracle 11g 服务端下载地址及安装说明
- 【模板】Splay
- 448. Find All Numbers Disappeared in an Array
- 解析提高PHP执行效率的50个技巧