我有一个列表列表,并且想要在每个列表中的每个元素上获得一个迭代器。我的想法是编写一个具有两个变量的类:遍历列表的迭代器和遍历当前内部列表的迭代器。每当内部列表迭代器引发StopIteration时,我都会在外部列表迭代器上调用next。我的方法是在下一个函数中包含许多嵌套的ifs,因此我想问一下这是什么pythonic方法。例子:lists = [[1, 2].__iter__(), [3, 4].__iter__()]现在,我需要迭代1、2、3和4的迭代器对象。因为我正在使用的列表很大,所以我只能使用迭代器。
2 回答
幕布斯7119047
TA贡献1794条经验 获得超8个赞
使用izip:izip(*nested)
如果您使用的是Python 3.x,则仅使用“ zip”
该*
运算符是参数解包运算符,它允许通过语句“散布”一个元组或一个列表。另一个例子是:
list = (1, 2, 3, 4, 5) a, *bcd, e = list # a=1, bcd=[2,3,4] and e=5
添加回答
举报
0/150
提交
取消