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

Python中__str__函数返回值打印问题及代码修正咨询

问题代码修正建议

你的代码存在几个不符合Python规范的问题,导致课程自动检查不通过,以下是修正后的代码和问题说明:

修正后的代码

class X(str):
    def __str__(self):
        return self.capitalize()

b = X('hello')
print(b)

问题点说明

  • __str__方法签名错误:Python中__str__的标准定义只有self一个参数,你额外添加的name参数不符合规范,自动检查系统会判定方法签名不合法。
  • 硬编码固定值:你直接把'hello'写死在方法里,没有利用实例本身存储的字符串内容,这样不管传入什么字符串,返回的都是'Hello',完全失去了类的通用性。
  • 手动调用__str__并传参:正常情况下print(b)会自动触发__str__方法,不需要手动调用b.__str__('hello'),这种调用方式不符合Python的常规用法。

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

相关产品推荐
方舟 Agent Plan

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

最近更新时间:2026.08.10 06:55:13