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

Python提取文本文件特定内容行遇AttributeError报错求助

问题解决:提取含指定关键词的行并修复AttributeError

错误原因分析

  1. 嵌套列表导致的错误:你用array.append(file.readlines())把readlines()返回的行列表整体塞进了array里,导致array变成了[[行1,行2,...]]这种嵌套结构。循环时array[i]是整个行列表,不是单个字符串,自然没有find方法,触发AttributeError。
  2. find返回值判断错误:find()返回的是关键词的索引位置,找不到返回-1,不是布尔值True/False,用== True判断永远不会成立。

修正后的代码

直接获取行列表,用in判断关键词是否存在,同时用with语句自动管理文件(避免手动关闭的疏漏):

# 读取源文件并提取目标行
with open("blabla.txt", "r") as src_file:
    # 直接获取所有行,不需要append
    lines = src_file.readlines()

# 写入结果到新文件
with open("output.txt", "w") as dest_file:
    for line in lines:
        # 用in判断关键词是否在当前行里
        if "\"Name\"" in line or "\"DefaultText\"" in line:
            dest_file.write(line)

更精简的写法(可选)

可以把读取和写入合并,减少内存占用(适合大文件):

with open("blabla.txt", "r") as src_file, open("output.txt", "w") as dest_file:
    for line in src_file:
        if "\"Name\"" in line or "\"DefaultText\"" in line:
            dest_file.write(line)

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.07.18 06:54:54