gpt4 book ai didi

python - 在 Python 中,我如何迭代一个迭代器,然后再迭代另一个?

转载 作者:IT老高 更新时间:2023-10-28 20:31:26 24 4
gpt4 key购买 nike

我想迭代两个不同的迭代器,像这样:

file1 = open('file1', 'r')
file2 = open('file2', 'r')
for item in one_then_another(file1, file2):
print item

我希望先打印 file1 的所有行,然后打印 file2 的所有行。

我想要一些通用的东西,因为迭代器可能不是文件,这只是一个例子。我知道我可以这样做:

for item in [file1]+[file2]:

但这会将两个文件都读入内存,我希望避免这样做。

最佳答案

使用 itertools.chain :

from itertools import chain
for line in chain(file1, file2):
pass

fileinput模块也提供了类似的功能:

import fileinput
for line in fileinput.input(['file1', 'file2']):
pass

关于python - 在 Python 中,我如何迭代一个迭代器,然后再迭代另一个?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21825984/

24 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com