📜  3.5.8:矩形,第 3 部分 (1)

📅  最后修改于: 2023-12-03 14:38:51.810000             🧑  作者: Mango

3.5.8:矩形,第 3 部分

在第 3 部分中,我们将讨论如何使用Python编写一个矩形类(Rectangle),该类将具有计算矩形周长和面积的功能,并且还能够检查两个矩形是否相等。

矩形类的定义

下面是一个基本的矩形类定义:

class Rectangle:
    def __init__(self, width, height):
        self.width = width
        self.height = height
        
    def area(self):
        return self.width * self.height
        
    def perimeter(self):
        return 2 * (self.width + self.height)
        
    def __eq__(self, other):
        return self.width == other.width and self.height == other.height

在这个类定义中,我们定义了矩形的宽度和高度,并定义方法来计算它的面积、周长和检查两个矩形是否相等。

这里值得注意的是,我们使用了Python中的特殊方法__eq__来定义对象的等价性,这样我们就可以使用相等运算符“==”来检查两个矩形是否相等。

测试矩形类

以下是一些测试代码,可以测试我们刚刚定义的矩形类:

r1 = Rectangle(10, 20)
r2 = Rectangle(10, 20)

print(r1 == r2)  # True
print(r1.area()) # 200
print(r1.perimeter()) # 60

r3 = Rectangle(5, 15)

print(r1 == r3) # False

这段代码中,我们创建了两个相同宽度和高度的矩形对象,并检查它们是否相等。我们还计算了第一个矩形对象的面积和周长。

接下来,我们创建了一个不同宽度和高度的矩形对象,并再次检查两个矩形对象之间的等价性。

总结

在本节中,我们讨论了如何使用Python编写一个矩形类(Rectangle)来计算矩形的周长和面积,并检查两个矩形是否相等。我们还通过一些代码片段测试了我们的代码。