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

Python运行代码报AttributeError:'str'无'unitPrice'属性

报错核心成因
  • 异常本质:代码在第22行、第55行尝试读取unitPrice属性时,当前操作的对象是字符串类型,不具备Item类定义的unitPrice属性。

结合库存管理业务的常见触发场景

  • 字典遍历逻辑错误:如果Store类的库存采用字典结构存储,字典键值为商品名字符串、对应值为Item类实例,遍历库存时若直接遍历字典本身而非字典的values,获取到的全是字符串类型的商品名键,对这些键读取unitPrice属性就会触发报错。这类逻辑通常分布在库存初始化校验、总库存价值统计、商品列表展示代码段,对应你代码第22行的问题来源。
  • 方法入参类型错配:如果Store类的购买方法设计为接收Item类实例作为入参,实际调用时误传商品名字符串作为参数,方法内部尝试读取入参的unitPrice属性计算结算金额时,就会因入参是字符串触发报错。这类逻辑通常分布在结算金额计算、库存扣减的代码段,对应你代码第55行的问题来源。

定位验证方式

在两处报错行的unitPrice属性调用前,增加打印语句:print(目标对象的类型),运行后会输出<class 'str'>,可直接锁定类型不匹配的具体位置。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.10.22 07:54:03