You need to enable JavaScript to run this app.
优惠活动
大模型
产品
解决方案
定价
更多

如何使用Python去除文本文件中的重复行并输出到新文件

Python 文本文件重复行去重实现方案

方案1:全局去重(保留首次出现顺序,适用所有重复场景)

用集合记录已经写入过的行,遍历原文件时仅写入未出现过的行,查询效率为O(1),适合绝大多数场景:

seen = set()
# 可以把两个上下文管理器写在同一行简化代码
with open('one.txt', 'r') as infile, open('output.txt', 'w') as outfile:
    for line in infile:
        # 仅当该行从未写入过才执行输出操作
        if line not in seen:
            seen.add(line)
            outfile.write(line)

这个方案不管重复行是不是连续出现,都能保证最终文件中每行只出现一次,且保留第一次出现的顺序,完全匹配你的需求。

方案2:连续重复行去重(超低内存占用,适合超大文件)

如果你的文件中重复行都是连续出现的(和你给出的示例一致),可以只记录上一行内容,不用存储所有历史行,内存占用几乎为0:

last_line = None
with open('one.txt', 'r') as infile, open('output.txt', 'w') as outfile:
    for line in infile:
        if line != last_line:
            outfile.write(line)
            last_line = line

处理后输出结果

针对你给出的one.txt内容,两种方案输出的output.txt内容完全一致:

822.25 111.48 883.59 256.68
 8.6 123.68 467.27 276.69
 0.0 186.77 165.62 375.0
 724.76 177.83 923.52 316.78
 438.03 148.5 540.88 198.54
 511.99 170.97 571.74 215.81

内容的提问来源于stack exchange,提问作者Soodep Dhakal

相关产品推荐
方舟 Agent Plan

超全模态模型 × Harness 升级,最新支持 Deepseek-V4.1-Flash、GLM-5.3 系列、Doubao-Seedream-5.0-pro、Kimi-K3 (部分), 限时 9.9 元起

最近更新时间:2026.09.26 13:54:04