类,实例方法,设计矩形

第一个属性没有给出默认值第二个属性有,那么输入的时候应该如何定义?
题目:设计一个名为 MyRectangle 的矩形类来表示矩形。这个类包含:

(1) 宽度和高度:width、height

(2) 构造方法:传入width,height。如果 width 和 height 不传,则默认是 100.

(3) 定义一个 getArea() 计算面积的方法

(4) 定义一个 getPerimeter(),计算周长的方法

(5) 定义一个info() 输出矩形长、宽、周长、面积的方法

测试数据:R1(90,80),R2(height=120),R3(width=200) 实例调用info()实例方法

img

class MyRectangle:
    def __init__(self, width=100, height=100):
        self.width = width
        self.height = height

    def getArea(self):
        return self.width * self.height

    def getPerimeter(self):
        return 2 * (self.width + self.height)

    def info(self):
        print("矩形长:", self.width)
        print("矩形宽:", self.height)
        print("矩形周长:", self.getPerimeter())
        print("矩形面积:", self.getArea())

R1 = MyRectangle(90, 80)
R2 = MyRectangle(height=120)
R3 = MyRectangle(width=200)
R1.info()
print()
R2.info()
print()
R3.info()

class MyRectangle:
    def __init__(self, width=100, height=100) -> None:
        self.width = width
        self.height = height

    def getArea(self):
        return self.width * self.height

    def getPerimeter(self):
        return (self.width + self.height) * 2

    def info(self):
        print(
            f'width={self.width}, height={self.height}, perimeter={self.getPerimeter()}, area={self.getArea()}')


if __name__ == '__main__':
    R1 = MyRectangle(90, 80)
    R2 = MyRectangle(height=120)
    R3 = MyRectangle(width=200)
    R1.info()
    R2.info()
    R3.info()