gpt4 book ai didi

julia - 如何从 Julia 的两个文件中一次读取一行?

转载 作者:行者123 更新时间:2023-12-04 02:33:52 24 4
gpt4 key购买 nike

我正在使用 Julia 1.4。我想打开两个大的 gzip 文件(file1.gz 和 file2.gz),然后从文件 1 中读取第一行,从文件 2 中读取第一行,对这些文件做一些处理,然后转到每个文件的第二行文件等如果我嵌套两个 for 循环,这显然不起作用,因为它在移动到 file1 的下一行之前循环遍历 file2。文件很大,一次打开。

   handle1 = GZip.open(file1.gz)
handle2 = GZip.open(file2.gz)
for line1 in eachline(handle1)
for line2 in eachline(handle2)
println(line1,line2)
end
end

有没有简单的解决办法?

最佳答案

是的,您可以使用zip。您也可以自己管理 eachline 迭代器,但使用 zip 更容易:

handle1 = GZip.open(file1.gz)
handle2 = GZip.open(file2.gz)

for (line1, line2) in zip(eachline(handle1), eachline(handle2))
println(line1,line2)
end

close(handle1)
close(handle2)

不要忘记关闭文件!

另外,请注意,如果两个文件的行数不同,zip 迭代器将在两个文件中的第一个用完时停止。

关于julia - 如何从 Julia 的两个文件中一次读取一行?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/62716845/

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