Python基于yield遍历多个可迭代对象


Posted in Python onMarch 12, 2020

使用itertools工具类中的chain方法,可以很方便的将多个iterable对象一起遍历. 不过,对于dict类型的iterable对象,只会遍历key.

from itertools import chain
my_list = [1, 2, 3]
my_dict = {
  'name': 'zs',
  'age': 45
}
# 使用chain将三个可迭代对象一起遍历, dict是打印key
for value in chain(my_list, my_dict, range(20, 30)):
  print(value, end=",") # 1,2,3,name,age,20,21,22,23,24,25,26,27,28,29,

下面自定义一个my_chain,用于实现上面的功能

def my_chain(*args, **kwargs):
  """注意: args是一个tuple, tuple是一个可迭代对象"""
  for iterable_obj in args:
    for value in iterable_obj:
      yield value
for value in my_chain(my_list, my_dict, range(20, 30)):
  print(value, end=",") # 1,2,3,name,age,20,21,22,23,24,25,26,27,28,29,

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
python实现挑选出来100以内的质数
Mar 24 Python
Python自定义scrapy中间模块避免重复采集的方法
Apr 07 Python
利用python模拟sql语句对员工表格进行增删改查
Jul 05 Python
pandas.DataFrame.to_json按行转json的方法
Jun 05 Python
python原类、类的创建过程与方法详解
Jul 19 Python
详解python路径拼接os.path.join()函数的用法
Oct 09 Python
wxPython实现列表增删改查功能
Nov 19 Python
Tensorflow读取并输出已保存模型的权重数值方式
Jan 04 Python
python 模拟登录B站的示例代码
Dec 15 Python
anaconda安装pytorch1.7.1和torchvision0.8.2的方法(亲测可用)
Feb 01 Python
浅谈哪个Python库才最适合做数据可视化
Jun 28 Python
Elasticsearch 索引操作和增删改查
Apr 19 Python
Python通过4种方式实现进程数据通信
Mar 12 #Python
Python多进程编程multiprocessing代码实例
Mar 12 #Python
Python多线程多进程实例对比解析
Mar 12 #Python
Python线程协作threading.Condition实现过程解析
Mar 12 #Python
Python 实现网课实时监控自动签到、打卡功能
Mar 12 #Python
Python基于read(size)方法读取超大文件
Mar 12 #Python
Python函数生成器原理及使用详解
Mar 12 #Python
You might like
PHP循环获取GET和POST值的代码
2008/04/09 PHP
php站内搜索并高亮显示关键字的实现代码
2011/12/29 PHP
解析PHP跨站刷票的实现代码
2013/06/18 PHP
Yii框架用户登录session丢失问题解决方法
2017/01/07 PHP
PHP+ajax实现上传、删除、修改单张图片及后台处理逻辑操作详解
2020/02/12 PHP
THINKPHP5分页数据对象处理过程解析
2020/10/28 PHP
JQuery扩展插件Validate—6 radio、checkbox、select的验证
2011/09/05 Javascript
js不能跳转到上一页面的问题解决方法
2013/03/01 Javascript
JS实现下拉框的动态添加(附效果)
2013/04/03 Javascript
jQuery.extend()的实现方式详解及实例
2013/06/29 Javascript
jcrop基本参数一览
2013/07/16 Javascript
jquery实现点击label的同时触发文本框点击事件的方法
2015/06/05 Javascript
jquery实现LED广告牌旋转系统图片切换效果代码分享
2015/08/26 Javascript
JavaScript统计字符串中每个字符出现次数完整实例
2016/01/28 Javascript
javascript基本算法汇总
2016/03/09 Javascript
使用bootstrap3开发响应式网站
2016/05/12 Javascript
w3c编程挑战_初级脚本算法实战篇
2017/06/23 Javascript
浅谈原生JS中的延迟脚本和异步脚本
2017/07/12 Javascript
移动端触摸滑动插件swiper使用方法详解
2017/08/11 Javascript
vue-cli2打包前和打包后的css前缀不一致的问题解决
2018/08/24 Javascript
微信小程序实现选项卡效果
2018/11/06 Javascript
vue 双向数据绑定的实现学习之监听器的实现方法
2018/11/30 Javascript
Vue使用Three.js加载glTF模型的方法详解
2020/06/14 Javascript
Python中动态获取对象的属性和方法的教程
2015/04/09 Python
在Python中使用第三方模块的教程
2015/04/27 Python
python利用拉链法实现字典方法示例
2017/03/25 Python
Python数据类型之String字符串实例详解
2019/05/08 Python
中国最大的名表商城:万表网
2016/08/29 全球购物
拥有超过850家商店的美国在线派对商店:Party City
2018/10/21 全球购物
伦敦鲜花递送:Flower Station
2021/02/03 全球购物
水产养殖学应届生求职信
2013/09/29 职场文书
党员干部四风问题整改措施思想汇报
2014/10/12 职场文书
2015年元旦晚会活动总结(学生会)
2014/11/28 职场文书
博士生专家推荐信
2015/03/25 职场文书
史上最牛辞职信
2015/05/13 职场文书
太行山上观后感
2015/06/05 职场文书