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

 更新时间:2020年03月12日 13:14:29   作者:我太难了008  
这篇文章主要介绍了Python基于yield遍历多个可迭代对象,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下

使用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 生成器和迭代器的原理解析

    这篇文章主要介绍了python 生成器和迭代器的原理解析,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友可以参考下
    2019-10-10
  • Python使用base64模块进行二进制数据编码详解

    Python使用base64模块进行二进制数据编码详解

    这篇文章主要介绍了Python使用base64模块进行二进制数据编码详解,具有一定借鉴价值,需要的朋友可以参考下
    2018-01-01
  • 基于Python实现口罩佩戴检测功能

    基于Python实现口罩佩戴检测功能

    这篇文章主要介绍了基于Python实现的口罩佩戴检测,在本次实验中,我们要建立一个目标检测的模型,可以识别图中的人是否佩戴了口罩,本文通过实例代码给大家介绍的非常详细,需要的朋友参考下吧
    2022-05-05
  • Python3 集合set入门基础

    Python3 集合set入门基础

    集合也也也也是python内置的一种数据结构,它是一个无序且元素不重复的序列。这里有两个关键词一个是无序,这一点和字典是一样的,另一个关键词是元素不重复,这一点和字典的key(键)是一样的
    2020-02-02
  • Python sqlite3事务处理方法实例分析

    Python sqlite3事务处理方法实例分析

    这篇文章主要介绍了Python sqlite3事务处理方法,结合具体实例形式分析了Python针对sqlite3事务处理的操作技巧,代码中包含详尽的注释,需要的朋友可以参考下
    2017-06-06
  • Python中os模块的简单使用及重命名操作

    Python中os模块的简单使用及重命名操作

    这篇文章主要给大家介绍了关于Python中os模块的简单使用及重命名操作的相关资料,文中通过示例代码介绍的非常详细,对大家的学习或者工作具有一定的参考学习价值,需要的朋友们下面随着小编来一起学习学习吧
    2021-04-04
  • Python+drawpad实现CPU监控小程序

    Python+drawpad实现CPU监控小程序

    这篇文章主要为大家详细介绍了如何利用Python+drawpad实现一个简单的CPU监控小程序,文中示例代码讲解详细,感兴趣的小伙伴可以尝试一下
    2022-08-08
  • Android基于TCP和URL协议的网络编程示例【附demo源码下载】

    Android基于TCP和URL协议的网络编程示例【附demo源码下载】

    这篇文章主要介绍了Android基于TCP和URL协议的网络编程,结合实例形式分析了Android网络编程的通信原理、实现步骤与相关操作技巧,并附带demo源码供读者下载参考,需要的朋友可以参考下
    2018-01-01
  • 详解Python中__str__和__repr__方法的区别

    详解Python中__str__和__repr__方法的区别

    这篇文章主要介绍了__str__和__repr__方法的区别 ,__str__和__repr__是基本的内置方法,使用时的区别也是Python学习当中的基础,需要的朋友可以参考下
    2015-04-04
  • 教你如何利用Python批量翻译英文Word文档并保留格式

    教你如何利用Python批量翻译英文Word文档并保留格式

    本文将给大家分享一个实用的Python办公自动化脚本 利用Python批量翻译英文Word文档并保留格式,最终效果甚至比部分收费的软件还要好!文中有非常详细的代码示例.需要的朋友可以参考下
    2021-05-05

最新评论