用python 定义一个成绩类,属性有:提示信息(本学期课程成绩如下),方法有获取课程成绩,计算课程等级,计算课程绩点。 并将该类对象实例化,输入合适的参数,并输出结果。 扩展功能:如果采用可变参数作为课程成绩,添加计算课程平均成绩的方法,输出平均成绩。
时间: 2023-12-20 08:07:59 浏览: 152
以下是一个示例代码,实现了题目所需的功能:
```python
class Grade:
def __init__(self, *scores):
self.scores = scores
self.prompt = "本学期课程成绩如下:"
def get_scores(self):
return self.scores
def calculate_level(self, score):
if score >= 90:
return "A"
elif score >= 80:
return "B"
elif score >= 70:
return "C"
elif score >= 60:
return "D"
else:
return "F"
def calculate_gpa(self, score):
if score >= 90:
return 4.0
elif score >= 80:
return 3.0
elif score >= 70:
return 2.0
elif score >= 60:
return 1.0
else:
return 0.0
def calculate_average(self):
return sum(self.scores) / len(self.scores)
def show_results(self):
print(self.prompt)
for i in range(len(self.scores)):
print("课程成绩{}:{},课程等级:{},课程绩点:{}".format(i+1, self.scores[i],
self.calculate_level(self.scores[i]), self.calculate_gpa(self.scores[i])))
print("平均成绩为:{}".format(self.calculate_average()))
```
其中,`__init__()` 方法初始化了成绩列表和提示信息,`get_scores()` 方法获取成绩列表,`calculate_level()` 方法根据成绩计算等级,`calculate_gpa()` 方法根据成绩计算绩点,`calculate_average()` 方法计算平均成绩,`show_results()` 方法输出结果。
示例用法如下:
```python
# 实例化成绩对象,传入成绩列表参数
g = Grade(85, 76, 93, 67)
# 输出成绩以及计算结果
g.show_results()
```
输出结果如下:
```
本学期课程成绩如下:
课程成绩1:85,课程等级:B,课程绩点:3.0
课程成绩2:76,课程等级:C,课程绩点:2.0
课程成绩3:93,课程等级:A,课程绩点:4.0
课程成绩4:67,课程等级:D,课程绩点:1.0
平均成绩为:80.25
```
阅读全文