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

Python检测CSV中文字符并拆分中英文内容分别保存

完整实现方案

直接使用Python内置的csv标准库即可完成读取、分类、写入全流程,无需安装任何第三方依赖。
你已经实现的is_chinese判断函数可以直接复用,完整可运行代码如下:

import csv

def is_chinese(string):
    for ch in string:
        if u'\u4e00' <= ch <= u'\u9fff':
            return True
    return False

# 配置文件路径
SOURCE_FILE = "your_original_file.csv"
EN_OUTPUT = "English.csv"
ZH_OUTPUT = "Chinese.csv"

if __name__ == "__main__":
    # 同时打开源文件和两个输出文件,newline参数避免写入csv时出现多余空行
    with open(SOURCE_FILE, "r", encoding="utf-8", newline="") as f_src, \
         open(EN_OUTPUT, "w", encoding="utf-8", newline="") as f_en, \
         open(ZH_OUTPUT, "w", encoding="utf-8", newline="") as f_zh:
        
        # 初始化CSV读取器,自动识别表头
        reader = csv.DictReader(f_src)
        # 初始化两个写入器,字段和源文件完全一致
        writer_en = csv.DictWriter(f_en, fieldnames=reader.fieldnames)
        writer_zh = csv.DictWriter(f_zh, fieldnames=reader.fieldnames)

        # 两个输出文件都先写入公共表头
        writer_en.writeheader()
        writer_zh.writeheader()

        # 逐行遍历分类
        for row in reader:
            # 拼接当前行所有字段内容判断,避免漏判非name字段的中文
            line_content = "".join(row.values())
            if is_chinese(line_content):
                writer_zh.writerow(row)
            else:
                writer_en.writerow(row)
使用说明
  • 运行前将代码中SOURCE_FILE变量的值替换为你原始CSV文件的实际路径即可
  • 代码默认使用UTF-8编码读写文件,不会出现中文乱码问题,兼容Windows、macOS、Linux全平台
  • 如果你确定仅name字段可能出现中文字符,可以将判断逻辑替换为is_chinese(row["name"]),执行效率会略有提升,分类结果不变
  • 运行完成后,同目录下会自动生成两个目标文件:
    • English.csv:保留公共表头 + 所有不含中文字符的数据行(即示例中hali对应的行)
    • Chinese.csv:保留公共表头 + 所有包含中文字符的数据行(即示例中张三、云lee对应的行)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.28 06:30:52