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

时间:2021-05-22

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

from itertools import chainmy_list = [1, 2, 3]my_dict = { 'name': 'zs', 'age': 45}# 使用chain将三个可迭代对象一起遍历, dict是打印keyfor 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 valuefor 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,

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

声明:本页内容来源网络,仅供用户参考;我单位不保证亦不表示资料全面及准确无误,也不保证亦不表示这些资料为最新信息,如因任何原因,本网内容或者用户因倚赖本网内容造成任何损失或损害,我单位将不会负任何法律责任。如涉及版权问题,请提交至online#300.cn邮箱联系删除。

相关文章