PHP前端开发

python使用最有效的方法删除大文件中的某一行的实例

百变鹏仔 3小时前 #Python
文章标签 最有效

下面小编就为大家带来一篇python 删除大文件中的某一行(最有效率的方法)。小编觉得挺不错的,现在就分享给大家,也给大家做个参考。一起跟随小编过来看看吧

用 python 处理一个文本时,想要删除其中中某一行,常规的思路是先把文件读入内存,在内存中修改后再写入源文件。

但如果要处理一个很大的文本,比如GB级别的文本时,这种方法不仅需要占用很大内存,而且一次性读入内存时耗费时间,还有可能导致内存溢出。

所以,需要用另外一个思路去处理。

我们可以使用 open() 方法把需要修改的文件打开为两个文件,然后逐行读入内存,找到需要删除的行时,用后面的行逐一覆盖。实现方式见以下代码。

立即学习“Python免费学习笔记(深入)”;


with open('file.txt', 'r') as old_file:  with open('file.txt', 'r+') as new_file:    current_line = 0    # 定位到需要删除的行    while current_line