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

Python逐行读取文本文件时如何提取存储每行指定片段内容

文本字段提取实现方案

你可以通过两步拆分的方式准确提取目标字段,避免因为字段本身包含空格、特殊字符导致拆分错误,具体实现逻辑如下:

  • 逐行读取文件后先对每行做首尾去空处理,跳过无内容的空行
  • 第一次拆分用:作为分隔符,截取分隔符前的内容,过滤掉行尾的数值段
  • 第二次拆分用_作为分隔符,从右往左拆分3次,将前半段内容拆为4个部分,拆分结果的第一个元素就是你需要提取的首段字段
  • 将提取到的字段追加存入预先定义的结果列表即可,供后续程序调用

代码示例

# 初始化存储提取结果的列表
result = []

# 替换为你的目标文本文件实际路径
file_path = "target.txt"

with open(file_path, "r", encoding="utf-8") as f:
    for line in f:
        # 去除每行首尾的换行符、空白字符,跳过空行
        line_content = line.strip()
        if not line_content:
            continue
        # 第一次拆分:按:分割,取下划线分隔的前半段
        underscore_section = line_content.split(":")[0]
        # 第二次拆分:从右往左用_拆分3次,兼容首字段含特殊字符的场景
        parts = underscore_section.rsplit("_", 3)
        # 提取首字段存入列表
        result.append(parts[0])

# 验证输出结果
print(result)

针对你给出的示例文本,运行上述代码后得到的输出为:

['Shahran', 'Shahran', 'Pardis', 'Shahrake Qods', 'Shahrake Gharb']

注意:不要直接用split("_")全量拆分字符串,当首字段本身包含下划线时,全量拆分就会把首字段拆成多段导致提取错误;用rsplit("_", 3)指定从右拆分3次的写法鲁棒性更强,不管首字段包含空格还是下划线,都能准确拆分出4段内容。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.31 00:33:20