本程序中学生Student类中有学号 number,姓名 name,成绩 score 等实例变量,另外有静态变量学生对象个数 count 和总分sum。类方法average( )用来计算学生的平均分。
时间: 2024-06-12 08:06:23 浏览: 81
以下是基于上述描述的Python代码实现:
```python
class Student:
count = 0 # 静态变量,用于记录学生对象个数
sum = 0 # 静态变量,用于记录学生总分
def __init__(self, number, name, score):
self.number = number
self.name = name
self.score = score
Student.count += 1
Student.sum += score
@staticmethod
def average():
return Student.sum / Student.count
```
在上述代码中,`__init__()` 方法是类的构造函数,通过传入学号、姓名和成绩参数来初始化学生对象。每次创建新的学生对象时,静态变量 `count` 和 `sum` 分别加一和加上该学生的成绩。
`average()` 方法是一个静态方法,用于计算学生的平均分。它使用 `sum` 和 `count` 两个静态变量来计算平均分。由于该方法不需要访问实例变量,因此可以将其定义为静态方法。
使用示例:
```python
s1 = Student('001', 'Tom', 80)
s2 = Student('002', 'Jerry', 90)
print(Student.average()) # 输出平均分:85.0
```
在上述示例中,首先创建了两个学生对象 `s1` 和 `s2`,分别表示学号为 "001" 和 "002" 的学生。然后调用 `average()` 方法求出学生的平均分,输出结果为 85.0。
阅读全文