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

Python中匹配正确异常:TypeError无法捕获None属性访问错误

问题解决:匹配NoneType属性访问错误的正确异常类型

你遇到的'NoneType' object has no attribute 'pop'或'NoneType' object has no attribute 'lower'错误,对应的异常类型是AttributeError,而非代码中使用的TypeError,因此TypeError分支不会被触发,程序会进入通用Exception分支。

异常类型说明:

  • TypeError:当操作或函数被应用于类型不匹配的对象时触发(例如尝试将整数与字符串直接拼接)。
  • AttributeError:当尝试访问对象不存在的属性或方法时触发,None作为NoneType的实例,本身没有pop、lower这类属性,所以会触发该异常。

修改后的代码示例:

try:
    # 写入可能触发错误的业务代码
    # 示例:
    # obj = None
    # obj.pop()  # 或 obj.lower()
except AttributeError:
    # 匹配到目标错误时执行的逻辑
    print("处理NoneType访问不存在属性的错误")
except Exception as e:
    input(e)

内容的提问来源于stack exchange,提问作者mahle-majstr Man

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.19 05:21:29