建立一个基类Building,用来存储一座楼房的层数、房间数以及它的总平方英尺数。建立派生类Housing,继承Building,并存储下面的内容:卧室和浴室的数量,另外,建立派生类Office,继承Building,并存储灭火器和电话的数目。然后,编制应用程序,建立住宅楼对象和办公楼对象,并输出它们的有关数据。
时间: 2024-03-13 22:46:44 浏览: 16
好的,以下是代码实现:
```python
class Building:
def __init__(self, floors, rooms, sqft):
self.floors = floors
self.rooms = rooms
self.sqft = sqft
class Housing(Building):
def __init__(self, floors, rooms, sqft, bedrooms, bathrooms):
super().__init__(floors, rooms, sqft)
self.bedrooms = bedrooms
self.bathrooms = bathrooms
class Office(Building):
def __init__(self, floors, rooms, sqft, fire_extinguishers, phones):
super().__init__(floors, rooms, sqft)
self.fire_extinguishers = fire_extinguishers
self.phones = phones
# 创建住宅楼对象和办公楼对象
my_house = Housing(2, 5, 2000, 3, 2)
my_office = Office(5, 10, 5000, 20, 50)
# 输出对象的有关数据
print("我的住宅楼有{}层,{}个房间,总面积{}平方英尺,{}个卧室,{}个浴室。".format(my_house.floors, my_house.rooms, my_house.sqft, my_house.bedrooms, my_house.bathrooms))
print("我的办公楼有{}层,{}个房间,总面积{}平方英尺,{}个灭火器,{}个电话。".format(my_office.floors, my_office.rooms, my_office.sqft, my_office.fire_extinguishers, my_office.phones))
```
输出结果如下:
```
我的住宅楼有2层,5个房间,总面积2000平方英尺,3个卧室,2个浴室。
我的办公楼有5层,10个房间,总面积5000平方英尺,20个灭火器,50个电话。
```
希望这个例子能够帮助你更好地理解面向对象编程的思想。