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

读取含重复词汇的CSV文件并去重写入新CSV的实现方案

处理CSV文件的词汇去重与统计方案

直接用Python标准库的csv模块配合集合就能搞定,比用collections或functools更直接——集合天然支持去重,刚好匹配你的需求。

完整代码

import csv

def process_csv(input_path, output_path):
    unique_terms = set()
    
    # 读取原CSV,收集所有不重复词汇
    with open(input_path, 'r', encoding='utf-8') as infile:
        reader = csv.reader(infile)
        for row in reader:
            if not row:  # 跳过空行
                continue
            unique_terms.update(row)
    
    # 输出统计结果
    print(f"{input_path} 中不同词汇的数量:{len(unique_terms)}")
    
    # 写入去重后的新CSV
    with open(output_path, 'w', encoding='utf-8', newline='') as outfile:
        writer = csv.writer(outfile)
        # 按字母顺序排序后写入,也可以去掉sorted()保持原始出现顺序
        writer.writerow(sorted(unique_terms))

# 调用示例,替换成你的文件路径
if __name__ == "__main__":
    process_csv("your_input.csv", "your_output.csv")

关键说明

  • 去重逻辑:集合set会自动忽略重复元素,遍历每行把所有词汇加入集合,最终就能得到所有不重复的内容
  • 空行处理:判断if not row跳过空行,避免读取到无效的空数据
  • 输出格式:用csv.writer把去重后的词汇作为一行写入新文件,和你给出的示例输出格式一致

针对你的示例调整

如果你的输入里的数字1是不需要保留的(看你示例输出里没有它),可以在收集词汇时加个过滤:

unique_terms.update(term for term in row if not term.isdigit())

这样处理后,你的示例输入就会输出Praske -OK,Koda,Referenca,完全匹配期望结果。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.24 15:45:15