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

如何用Python将带$标记的拼写错误文件转为指定映射格式?

Python 实现拼写错误数据集格式转换

核心思路

  • 逐行遍历原文件 mispelling.txt
  • 遇到以$开头的行时,提取去掉$和前后空白后的内容作为当前正确拼写
  • 非$开头的非空行,均视为对应正确拼写的错误形式,按错误拼写->正确拼写格式写入新文件

完整实现代码

# 初始化当前正确拼写变量
current_correct = ""

# 用上下文管理器同时打开读写文件,自动处理文件关闭
with open("mispelling.txt", "r", encoding="utf-8") as infile, open("new_mispelling.txt", "w", encoding="utf-8") as outfile:
    for line in infile:
        # 去掉每行首尾的空白字符(换行、空格、制表符等)
        stripped_line = line.strip()
        # 跳过空行
        if not stripped_line:
            continue
        # 判断是否为正确拼写行
        if stripped_line.startswith("$"):
            # 去掉开头的$再去空白,赋值给当前正确拼写
            current_correct = stripped_line[1:].strip()
            continue
        # 非正确拼写行、非空行,按要求格式写入
        outfile.write(f"{stripped_line}->{current_correct}\n")

代码说明

  • 用with上下文管理器操作文件,避免手动调用close()可能出现的资源泄漏问题,新手使用更稳妥
  • 加入空行跳过逻辑,兼容原文件中存在的换行间隔
  • 显式指定encoding='utf-8',避免跨平台运行时出现编码乱码问题
  • 自动过滤正确拼写前后、错误拼写前后的多余空白,输出格式更规整

注意事项

  • 请确保原文件的第一个有效非空行为$开头的正确拼写行,避免出现正确拼写为空的异常输出
  • 如果需要保留错误拼写的前后空格,可以去掉stripped_line = line.strip()改为仅去掉末尾换行:stripped_line = line.rstrip('\n')

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.06 01:21:02