用python编写程序某大学举行新生歌唱大赛,要求从音乐素养,综合印象,歌曲诠释三项打分。具体定义一个新生歌手类Singer。有下面的类属性: 姓名、年龄、音乐素养,综合印象,歌曲诠释(打分项均为整数),且有以下的类方法: 获取学生的姓名:get_name() ;获取学生的年龄:get_age() ;返回三项中最高的分数和总分:get_item( ) 。
时间: 2024-03-12 12:43:55 浏览: 41
好的,以下是 Python 代码实现:
```python
class Singer:
def __init__(self, name, age, music_skill, comprehensive_impression, song_interpretation):
self.name = name
self.age = age
self.music_skill = music_skill
self.comprehensive_impression = comprehensive_impression
self.song_interpretation = song_interpretation
def get_name(self):
return self.name
def get_age(self):
return self.age
def get_item(self):
max_score = max(self.music_skill, self.comprehensive_impression, self.song_interpretation)
total_score = self.music_skill + self.comprehensive_impression + self.song_interpretation
return max_score, total_score
```
解释一下代码:
1. 定义一个 `Singer` 类,包含姓名、年龄、音乐素养、综合印象、歌曲诠释五个属性。
2. 在类的构造函数 `__init__()` 中初始化这五个属性。
3. 定义三个方法:`get_name()`、`get_age()`、`get_item()`。分别用于获取学生的姓名、年龄,以及返回三项中最高的分数和总分。
4. `get_item()` 方法中,使用 `max()` 函数获取三项中的最高分,使用 `+` 符号计算总分,最后返回这两个值。
注意事项:
- 在使用类时,需要先创建一个 `Singer` 对象,然后调用其方法来获取属性或计算结果。例如:
```python
singer = Singer("张三", 18, 90, 80, 95)
print(singer.get_name()) # 输出:张三
print(singer.get_age()) # 输出:18
print(singer.get_item()) # 输出:(95, 265)
```
- 可以根据实际情况添加其他方法和属性。
阅读全文