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

如何自动提取TXT文件中以(71)开头行的下一行内容?

问题描述

我是编程新手,想要从TXT文件中提取信息,具体需要获取以(71)开头行的下一行内容。目前我手动删除该行的换行符来获取所需信息,希望能实现这个过程的自动化。

当前代码
fhand = input('Ingrese nombre de archivo: ')
file = open(fhand, encoding='utf8')

pais = dict()
provincia = dict()

for line in file :
    if line.startswith('(71)') : 
      line = line.rstrip()
      lista = line.split(' ')
      pais[lista[-1]] = pais.get(lista[-1], 0) + 1
      if pais == 'AR':
        provincia[lista[-2]] = provincia.get(lista[-2], 0 ) + 1    

print(pais)
print(provincia)
print(count, cuenta)
修正后的解决方案

你当前的代码逻辑是统计(71)开头行里的国家和阿根廷省份数据,但和你实际需求(提取该行的下一行内容)不符,以下是符合需求的自动化实现代码:

# 获取文件名
file_name = input('请输入文件名: ')

# 使用with语句自动管理文件生命周期,无需手动关闭
with open(file_name, encoding='utf8') as file:
    need_extract_next = False
    extracted_lines = []
    
    for line in file:
        if need_extract_next:
            # 自动去除换行符和首尾空白字符
            cleaned_line = line.strip()
            extracted_lines.append(cleaned_line)
            need_extract_next = False
            continue
        
        # 检测到目标行,标记需要提取下一行
        if line.startswith('(71)'):
            need_extract_next = True

# 输出提取结果
print("提取到的内容:")
for content in extracted_lines:
    print(content)

代码说明

  • with open(...) 是Python推荐的文件操作方式,会在代码块结束后自动关闭文件,避免资源泄漏
  • 用need_extract_next布尔变量记录是否需要读取下一行,实现精准定位目标内容
  • strip()方法一次性去除换行符和首尾空白,替代手动删除换行符的操作
  • 提取的内容统一存在extracted_lines列表中,方便后续批量处理

内容的提问来源于stack exchange,提问作者Pablo Picco Plencovich

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.09 12:50:22