Class __str__ 魔术方法

Class __str__ magic-methods

你好,我正在学习 类 和特殊方法,我在使用下面的代码时遇到了问题,因为我似乎无法弄清楚如何让 def __ str__ 工作,它打印 none

class Circle:
    def __init__(self,radius):
        self.radius = radius
        print(f'Circle of radius {radius}')
    def circumference (self):
        self.circumference=round(2*3.14*self.radius,2)
    def __str__(self):
        return f"the circumference is: {self.circumference}"

circle_1=Circle(5)
print(circle_1.circumference())
class Circle:
    def __init__(self,radius):
        self.radius = radius
        print(f'Circle of radius {radius}')
    
    def circumference (self):
        return round(2*3.14*self.radius,2)
    
    def __str__(self):
        return "the circumference is: {}".format(self.circumference())
     
circle_1=Circle(5) 
print(circle_1)

你应该试试这个。