gpt4 book ai didi

python - 如何逐行读取大文件?

转载 作者:IT老高 更新时间:2023-10-28 12:01:53 24 4
gpt4 key购买 nike

我想遍历整个文件的每一行。一种方法是读取整个文件,将其保存到列表中,然后遍历感兴趣的行。此方法占用大量内存,所以我正在寻找替代方法。

到目前为止我的代码:

for each_line in fileinput.input(input_file):
do_something(each_line)

for each_line_again in fileinput.input(input_file):
do_something(each_line_again)

执行此代码会给出错误消息:设备处于事件状态

有什么建议吗?

目的是计算成对的字符串相似度,这意味着对于文件中的每一行,我想计算与其他每一行的 Levenshtein 距离。

最佳答案

读取文件的正确、完全 Pythonic 方式如下:

with open(...) as f:
for line in f:
# Do something with 'line'

with 语句处理打开和关闭文件,包括是否在内 block 中引发异常。 f 中的 for 行 将文件对象 f 视为可迭代的,它会自动使用缓冲 I/O 和内存管理,因此您不必担心大文件。

There should be one -- and preferably only one -- obvious way to do it.

关于python - 如何逐行读取大文件?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/8009882/

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