类实验:某大学举行新生歌唱大赛,要求从音乐素养,综合印象,歌曲诠释三项打分。具体定义一个新生歌手类Singer。有下面的类属性: 姓名、年龄、音乐素养,综合印象,歌曲诠释(打分项均为整数),且有以下的类方法: 获取学生的姓名:get_name() ;获取学生的年龄:get_age() ;返回三项中最高的分数和总分:get_item( ) 。
时间: 2024-03-08 11:48:31 浏览: 21
好的,这个程序可以用 Python 来实现,代码如下:
```python
class Singer:
def __init__(self, name, age, music_ability, impression, interpretation):
self.name = name
self.age = age
self.music_ability = music_ability
self.impression = impression
self.interpretation = interpretation
def get_name(self):
return self.name
def get_age(self):
return self.age
def get_item(self):
highest_score = max(self.music_ability, self.impression, self.interpretation)
total_score = self.music_ability + self.impression + self.interpretation
return highest_score, total_score
```
这段代码定义了一个 `Singer` 类,其中 `__init__` 方法用于初始化对象的属性,`get_name` 方法用于获取学生的姓名,`get_age` 方法用于获取学生的年龄,`get_item` 方法用于返回三项中最高的分数和总分。
在 `__init__` 方法中,我们传入了 `name`、`age`、`music_ability`、`impression`、`interpretation` 这几个参数,分别表示学生的姓名、年龄、音乐素养、综合印象、歌曲诠释。然后将这些参数赋值给对象的属性。
在 `get_name` 方法中,我们直接返回对象的 `name` 属性。
在 `get_age` 方法中,我们直接返回对象的 `age` 属性。
在 `get_item` 方法中,我们首先用 `max` 函数找出三项中最高的分数,然后用加法将三项分数相加得到总分,最后将最高分数和总分作为一个元组返回。
相关推荐
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![](https://csdnimg.cn/download_wenku/file_type_ask_c1.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)