基类商品Goods类,包含商品编号id和商品名称name两个属性。一个两参数的构造方法,一个显示商品信息的成员方法show(); (2)水果类Fruit继承基类Goods,增加口感属性taste,定义一个接收三个参数的构造方法,重写显示信息的成员方法show(); (3)要求输入商品信息,并在控制台输出商品信息。
时间: 2023-07-15 11:15:17 浏览: 125
以下是代码实现:
```python
class Goods:
def __init__(self, id, name):
self.id = id
self.name = name
def show(self):
print("商品编号:", self.id)
print("商品名称:", self.name)
class Fruit(Goods):
def __init__(self, id, name, taste):
super().__init__(id, name)
self.taste = taste
def show(self):
super().show()
print("商品口感:", self.taste)
id = input("请输入商品编号:")
name = input("请输入商品名称:")
taste = input("请输入商品口感:")
fruit = Fruit(id, name, taste)
fruit.show()
```
运行时,将依次提示输入商品编号、名称和口感,然后输出商品信息,包括编号、名称和口感。
相关问题
编写一个商品程序。包含三个类,具体要求如下: (1)基类商品Goods类,包含商品编号id和商品名称name两个属性。一个两参数的构造方法,一个显示商品信息的成员方法show(); (2)水果类Fruit继承基类Goods,增加口感属性taste,定义一个接收三个参数的构造方法,重写显示信息的成员方法show(); (3)要求输入商品信息,并在控制台输出商品信息。
下面是题目要求的商品程序的 Python 代码实现:
```python
class Goods:
def __init__(self, id, name):
self.id = id
self.name = name
def show(self):
print(f"商品编号:{self.id}\n商品名称:{self.name}")
class Fruit(Goods):
def __init__(self, id, name, taste):
super().__init__(id, name)
self.taste = taste
def show(self):
super().show()
print(f"口感:{self.taste}")
if __name__ == '__main__':
id = input("请输入商品编号:")
name = input("请输入商品名称:")
taste = input("请输入口感:")
fruit = Fruit(id, name, taste)
fruit.show()
```
程序中定义了一个基类 `Goods` 和一个子类 `Fruit`。`Goods` 类包含商品编号和商品名称两个属性,以及一个两个参数的构造方法和一个显示商品信息的方法。`Fruit` 类继承自 `Goods` 类,增加了一个口感属性,重写了显示信息的方法。
在程序的主函数中,先依次读入商品的编号、名称和口感,然后创建一个 `Fruit` 对象,并调用它的 `show` 方法来显示商品信息。
阅读全文