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

如何用Python提取TXT文件指定行内容并拆分元素以获目标输出?

提取TXT文件指定内容并拆分输出的脚本修正

我来帮你搞定这个需求!先明确下你的场景:你有一个内容如下的txt文件:

. . T - Python and Matplotlib Essentials for Scientists and Engineers
. A - Wood, M.A.
. . .

需要提取T - 后的完整标题,以及A - 后的作者名,还得把作者拆成姓氏和名字缩写,最终输出你想要的格式。

你的原脚本在内容提取和列表处理上有小问题,我帮你调整成更简洁易懂的版本,直接看修正后的代码:

with open('file.txt', 'r') as f:
    title_content = ""
    author_content = ""
    # 先遍历文件,把需要的行内容提取出来
    for line in f:
        if "T - " in line:
            title_content = line.strip()  # 去掉首尾的换行、空格等空白字符
        elif "A - " in line:
            author_content = line.strip()

# 处理标题:拆分后直接取分隔符后面的内容
final_title = title_content.split('T - ')[1].strip()
print(final_title)

# 处理作者:先拆分出A-后的内容,再按逗号分割成姓氏和名字缩写
author_part = author_content.split('A - ')[1].strip()
last_name, first_name_abbr = author_part.split(', ')
print(last_name)
print(first_name_abbr)

代码说明:

  • 用strip()替代rstrip('\n'),能同时清理行首尾的空格、换行符,处理后的内容更干净。
  • 拆分标题时,split('T - ')会把字符串分成两部分,直接取索引1的元素就是我们要的标题,不用复杂的filter操作。
  • 作者部分先提取出A - 后的完整内容,再用, 拆分,直接得到姓氏和名字缩写,逻辑更直观。

运行这个脚本后,就能得到你期望的输出:

Python and Matplotlib Essentials for Scientists and Engineers
Wood
M.A.

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.05.29 07:00:36