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

如何使用Python拆分单文本内的多段落并分别保存为独立txt文件

问题分析

你现有代码的核心问题如下:

  • 仅将所有内容写入单个文件,完全没有拆分段落、生成多文件的逻辑
  • 额外给每行末尾加了句号,会破坏原文本的原始格式
  • 没有按照你给出的「空行分隔段落」规则做拆分处理
可行解决方案

实现思路

  1. 读取原始文本后按连续空行拆分,得到所有独立段落
  2. 过滤掉拆分产生的空内容,避免首尾空行导致生成无效文件
  3. 每个段落可选择用开头的数字ID作为文件名,也可用1-100的序号作为文件名,方便对应识别
  4. 逐段写入独立的txt文件即可

可直接运行的代码

# 读取原始文件,编码可根据你实际文件编码调整为gbk等
with open('corpus_pubtator1.txt', 'r', encoding='utf-8') as f:
    content = f.read()

# 按空行拆分段落,过滤掉空内容
paragraphs = [p for p in content.split('\n\n') if p.strip()]

# 遍历段落逐个保存
for idx, para in enumerate(paragraphs, start=1):
    # 提取段落开头的ID作为文件名,不需要的话可以直接用f"paragraph_{idx}.txt"作为文件名
    first_line = para.split('\n')[0]
    file_id = first_line.split('|')[0] if '|' in first_line else str(idx)
    file_name = f"{file_id}.txt"
    
    # 写入独立文件
    with open(file_name, 'w', encoding='utf-8') as f:
        f.write(para)

print(f"拆分完成,共生成{len(paragraphs)}个独立文件")
注意事项
  • 如果原文件是Windows格式(换行符为\r\n),可以在读取内容后先执行content = content.replace('\r', '')再拆分,避免拆分失败
  • 如果需要保留原段落的末尾换行,可去掉拆分时的strip()处理,调整对应逻辑即可

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.09.23 17:24:00