(求求大佬)Python通过构造函数对数据成员进行初化

Python通过构造函数对数据成员进行初化,并确保长和宽都在(0,50)范围内设计perimeter(),area()方法分别计算矩形周长及面积; 设计display()方法显示矩形信息。 并在第1题的基础上添加一个数据成员,存放矩形位置,通常为矩形左上角坐标,然后修改构造方法和显示方法;设计move()方法,将矩形从一个位置移动到另一个位置;(求求各位大佬)

class rectangle():
    def __init__(self, w, h):
        if 50 > w > 0 and 50 > h > 0:
            self.w = w
            self.h = h
        else:
            print(f"w:{w} h:{h}不在范围内")
        self. x = 0
        self. y = 0

    def perimeter(self):
        return 2 * (self.w + self.h)

    def area(self):
        return self.h * self.w

    def display(self):
        print(f'长:{self.w} 宽:{self.h}')
        print(f'周长:{self.perimeter()}')
        print(f'面积:{self.area()}')
        print(f'位置x:{self.x}, y:{self.y}')

    def move(self,d_x,d_y):
        self.x+=d_x
        self.y+=d_y

if __name__ == '__main__':
    rect = rectangle(25,25)
    rect.display()
    rect.move(20,21)
    rect.display()

如有帮助请采纳~