如何自定义Python类实例调用print()函数时的输出内容
实现方案
你需要在Product类中重写Python内置魔法方法__str__,print()函数打印对象时会优先调用该方法返回的字符串,即可实现要求的输出格式。另外注意你原有代码中__init__方法下的self._name = name缺少缩进,属于语法错误,修改时需要先修正缩进问题。
修改后的完整类代码如下:
class Product: def __init__(self, name = ""): self._name = name @property def name(self): return self._name # 新增__str__方法自定义打印格式 def __str__(self): return f"Product(name={self.name})" # 可选:如果需要交互式终端直接输入实例名也显示相同格式,添加下面这行 # __repr__ = __str__
测试验证代码:
my_product = Product("Computer") print(my_product) # 输出结果:Product(name=Computer)
内容的提问来源于stack exchange,提问作者Kardier
相关产品推荐
相关产品推荐

