定义一个成绩类,属性有:提示信息(本学期课程成绩如下),方法有获取课程成绩,计算课程等级,计算课程绩点。 并将该类对象实例化,输入合适的参数,并输出结果。 扩展功能:如果采用可变参数作为课程成绩,添加计算课程平均成绩的方法,输出平均成绩。
时间: 2024-02-27 14:51:54 浏览: 13
好的,我来为您编写一个成绩类的代码,满足您的要求:
```python
class Score:
def __init__(self, *grades):
self.grades = grades
self.prompt = "本学期课程成绩如下:"
def get_grades(self):
for idx, grade in enumerate(self.grades):
print(f"课程 {idx+1} 成绩为:{grade}")
def get_level(self, grade):
if grade >= 90:
return "A"
elif grade >= 80:
return "B"
elif grade >= 70:
return "C"
elif grade >= 60:
return "D"
else:
return "F"
def get_points(self, grade):
if grade >= 90:
return 4.0
elif grade >= 80:
return 3.0
elif grade >= 70:
return 2.0
elif grade >= 60:
return 1.0
else:
return 0.0
def get_grade_info(self):
self.get_grades()
for grade in self.grades:
print(f"对应的等级为:{self.get_level(grade)},对应的绩点为:{self.get_points(grade)}")
def get_average(self):
average = sum(self.grades) / len(self.grades)
print(f"平均成绩为:{average}")
# 实例化对象
score = Score(90, 85, 73, 65, 96)
# 输出成绩信息
score.get_grade_info()
# 输出平均成绩
score.get_average()
```
这个成绩类的代码中,首先定义了一个 Score 类,包含了成绩列表 grades 和提示信息 prompt 两个属性,以及获取成绩、计算等级和绩点、获取成绩信息、获取平均成绩等方法。
在实例化对象时,可以传入一系列课程成绩参数,然后调用 get_grade_info 方法获取每门课程的成绩、等级和绩点信息,调用 get_average 方法获取课程的平均成绩。
希望这段代码可以满足您的要求。
相关推荐
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.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)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![doc](https://img-home.csdnimg.cn/images/20210720083327.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![](https://img-home.csdnimg.cn/images/20210720083646.png)
![docx](https://img-home.csdnimg.cn/images/20210720083331.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)
![zip](https://img-home.csdnimg.cn/images/20210720083736.png)