实现一个学生信息处理程序,输入:姓名,年龄,学号,第一学年平均成绩,第二学年平均成绩,第三学年平均成绩,第四学年平均成绩,输出:姓名,年龄,学号,四年的平均成绩。要求实现一个代表学生的类,并且所有成员变量都应该是私有的
时间: 2023-05-18 10:06:49 浏览: 115
好的,这是一个典型的面向对象编程问题。以下是一个可能的实现:
```python
class Student:
def __init__(self, name, age, student_id, grade1, grade2, grade3, grade4):
self.__name = name
self.__age = age
self.__student_id = student_id
self.__grade1 = grade1
self.__grade2 = grade2
self.__grade3 = grade3
self.__grade4 = grade4
def get_name(self):
return self.__name
def get_age(self):
return self.__age
def get_student_id(self):
return self.__student_id
def get_average_grade(self):
return (self.__grade1 + self.__grade2 + self.__grade3 + self.__grade4) / 4
# 示例用法
s = Student("张三", 20, "20210001", 80, 85, 90, 95)
print(s.get_name(), s.get_age(), s.get_student_id(), s.get_average_grade())
```
输出结果为:"张三 20 20210001 87.5",即四年的平均成绩为 87.5。
注意,这里使用了 Python 中的类和私有变量(即以双下划线开头的变量名),以保护数据的封装性和安全性。同时,为了方便外部访问,我们提供了一些公共的方法(即以 get_ 开头的方法),以获取私有变量的值。