python编写一个测试,在测试中创建两个Rectangle类型的对象: (1)设置第1个对象的宽为4,高为6,颜色为:白色 (2)设置第2个对象的,宽为5,高为9,颜色为:红色 运行测试,在屏幕上显示: 白色矩形的面积为:XXX,周长为:XXX 红色矩形的面积为:XXX,周长为:XXX
时间: 2024-03-20 10:39:30 浏览: 9
好的,以下是代码实现:
```python
class Rectangle:
def __init__(self, width, height, color):
self.width = width
self.height = height
self.color = color
def area(self):
return self.width * self.height
def perimeter(self):
return 2 * (self.width + self.height)
# 创建第一个对象
rectangle1 = Rectangle(4, 6, "白色")
# 创建第二个对象
rectangle2 = Rectangle(5, 9, "红色")
# 输出结果
print("白色矩形的面积为:{},周长为:{}".format(rectangle1.area(), rectangle1.perimeter()))
print("红色矩形的面积为:{},周长为:{}".format(rectangle2.area(), rectangle2.perimeter()))
```
运行结果如下:
```
白色矩形的面积为:24,周长为:20
红色矩形的面积为:45,周长为:28
```
相关问题
编写一个测试程序,分别输入两个矩形的高和宽,创建两个rectangle对象。按照顺序显示每个矩形的宽、高、面积和周长。
### 回答1:
以下是一个示例测试程序:
```python
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)
# 输入第一个矩形的高和宽
width1 = int(input("请输入第一个矩形的宽度:"))
height1 = int(input("请输入第一个矩形的高度:"))
# 创建第一个矩形对象
rect1 = Rectangle(width1, height1)
# 输入第二个矩形的高和宽
width2 = int(input("请输入第二个矩形的宽度:"))
height2 = int(input("请输入第二个矩形的高度:"))
# 创建第二个矩形对象
rect2 = Rectangle(width2, height2)
# 按照顺序显示每个矩形的宽、高、面积和周长
print("第一个矩形的宽度为:", rect1.width)
print("第一个矩形的高度为:", rect1.height)
print("第一个矩形的面积为:", rect1.area())
print("第一个矩形的周长为:", rect1.perimeter())
print("第二个矩形的宽度为:", rect2.width)
print("第二个矩形的高度为:", rect2.height)
print("第二个矩形的面积为:", rect2.area())
print("第二个矩形的周长为:", rect2.perimeter())
```
运行程序后,会依次提示输入两个矩形的高和宽,然后创建两个Rectangle对象,并按照顺序显示每个矩形的宽、高、面积和周长。
### 回答2:
这题需要用到面向对象的思想,我们可以先定义一个rectangle类:
class Rectangle:
def __init__(self, height, width):
self.height = height
self.width = width
def get_area(self):
return self.height * self.width
def get_perimeter(self):
return 2 * (self.height + self.width)
接着,我们可以编写测试程序,按照题目要求输入两个矩形的高和宽,创建两个rectangle对象,最后顺序显示每个矩形的宽、高、面积和周长:
# 输入第一个矩形的高和宽
height1 = int(input("请输入第一个矩形的高:"))
width1 = int(input("请输入第一个矩形的宽:"))
# 创建第一个rectangle对象
rect1 = Rectangle(height1, width1)
# 输入第二个矩形的高和宽
height2 = int(input("请输入第二个矩形的高:"))
width2 = int(input("请输入第二个矩形的宽:"))
# 创建第二个rectangle对象
rect2 = Rectangle(height2, width2)
# 顺序显示每个矩形的宽、高、面积和周长
print("第一个矩形的宽:", rect1.width)
print("第一个矩形的高:", rect1.height)
print("第一个矩形的面积:", rect1.get_area())
print("第一个矩形的周长:", rect1.get_perimeter())
print("第二个矩形的宽:", rect2.width)
print("第二个矩形的高:", rect2.height)
print("第二个矩形的面积:", rect2.get_area())
print("第二个矩形的周长:", rect2.get_perimeter())
当我们输入完两个矩形的高和宽后,程序会创建两个rectangle对象,并按照顺序显示每个矩形的宽、高、面积和周长。这里注意,我们在rectangle类的定义中,分别定义了get_area()和get_perimeter()方法来计算矩形的面积和周长。在测试程序中,我们直接调用这两个方法即可。
### 回答3:
首先,我们需要创建一个Rectangle类用于表示矩形对象,并且可以计算矩形的面积和周长。以下是一个简单的Rectangle类的实现:
```python
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 __str__(self):
return f"Width: {self.width}, Height: {self.height}, Area: {self.area()}, Perimeter: {self.perimeter()}"
```
这个类有一个构造函数,需要传入矩形的宽和高。它还有两个方法,分别用于计算矩形的面积和周长。最后,我们重载了__str__方法,返回一个字符串,用于显示矩形的信息。
现在我们可以编写一个测试程序,让用户输入两个矩形的宽和高,创建两个Rectangle对象,并显示它们的信息。以下是完整的代码:
```python
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 __str__(self):
return f"Width: {self.width}, Height: {self.height}, Area: {self.area()}, Perimeter: {self.perimeter()}"
# 用户输入第一个矩形的宽和高
width1 = int(input("Enter the width of rectangle 1: "))
height1 = int(input("Enter the height of rectangle 1: "))
# 创建第一个Rectangle对象
rect1 = Rectangle(width1, height1)
# 用户输入第二个矩形的宽和高
width2 = int(input("Enter the width of rectangle 2: "))
height2 = int(input("Enter the height of rectangle 2: "))
# 创建第二个Rectangle对象
rect2 = Rectangle(width2, height2)
# 显示两个矩形的信息
print("Rectangle 1:")
print(rect1)
print("Rectangle 2:")
print(rect2)
```
用户会被要求依次输入两个矩形的宽和高,然后创建两个Rectangle对象。接下来,程序会显示每个矩形的宽、高、面积和周长。
这个程序对于初学者来说非常简单,但它可以很好地演示如何创建自定义类和对象,并且了解如何使用类和对象来实现某些功能。
用python:7.1(Rectangle类)按照第7.2节中Circle类的例子,设计一个名为Rectangle类来表示矩形。这个类 包括: ●两个名为width和height的数据域。 构造方法创建一个指定width和heightd的矩形。将1和2分别作为width和height的默认值。一个名为getArea)的方法来返回这个矩形的面积。一个名为getPerimeter)的方法返回周长。 绘制该类的UML类图,然后实现这个类。编写一个测试程序创建两个Rectangle对象,一个宽为4高为40,而另一个宽为3.5高为35.7。按照这个顺序显示每个矩形的宽、高、面积和周长。
下面是对应的UML类图及Python代码实现:
```python
# Rectangle类定义
class Rectangle:
# 构造方法
def __init__(self, width=1, height=2):
self.__width = width
self.__height = height
# 计算面积
def getArea(self):
return self.__width * self.__height
# 计算周长
def getPerimeter(self):
return 2 * (self.__width + self.__height)
# 获取宽度
def getWidth(self):
return self.__width
# 获取高度
def getHeight(self):
return self.__height
# 测试程序
def main():
# 创建两个Rectangle对象
rectangle1 = Rectangle(4, 40)
rectangle2 = Rectangle(3.5, 35.7)
# 显示矩形1的宽、高、面积和周长
print("矩形1的宽为:", rectangle1.getWidth())
print("矩形1的高为:", rectangle1.getHeight())
print("矩形1的面积为:", rectangle1.getArea())
print("矩形1的周长为:", rectangle1.getPerimeter())
# 显示矩形2的宽、高、面积和周长
print("矩形2的宽为:", rectangle2.getWidth())
print("矩形2的高为:", rectangle2.getHeight())
print("矩形2的面积为:", rectangle2.getArea())
print("矩形2的周长为:", rectangle2.getPerimeter())
# 调用测试程序
main()
```
运行结果如下:
```
矩形1的宽为: 4
矩形1的高为: 40
矩形1的面积为: 160
矩形1的周长为: 88
矩形2的宽为: 3.5
矩形2的高为: 35.7
矩形2的面积为: 124.95000000000002
矩形2的周长为: 78.4
```