网络编程
位置:首页>> 网络编程>> Python编程>> Python基于yield遍历多个可迭代对象

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

作者:我太难了008  发布时间:2023-01-05 23:01:32 

标签: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,

来源:https://www.cnblogs.com/z-qinfeng/p/12109749.html

0
投稿

猜你喜欢

手机版 网络编程 asp之家 www.aspxhome.com