Python uses classes to implement a simple student grade management system
We will use Python classes to implement a simple student grade management system. This system will allow us to add students, record their grades, and calculate each student's average grade.
Example
class Student:
def __init__(self, name):
self.name = name
self.grades = []
def add_grade(self, grade):
self.grades.append(grade)
def average_grade(self):
return sum(self.grades) / len(self.grades) if self.grades else 0
class GradeManager:
def __init__(self):
self.students = []
def add_student(self, name):
self.students.append(Student(name))
def get_student(self, name):
for student in self.students:
if student.name == name:
return student
return None
def add_grade_to_student(self, name, grade):
student = self.get_student(name)
if student:
student.add_grade(grade)
else:
print(f"Student {name} not found.")
def show_average_grades(self):
for student in self.students:
print(f"{student.name}'s average grade is {student.average_grade():.2f}")
# Example usage
manager = GradeManager()
manager.add_student("Alice")
manager.add_student("Bob")
manager.add_grade_to_student("Alice", 90)
manager.add_grade_to_student("Alice", 85)
manager.add_grade_to_student("Bob", 78)
manager.add_grade_to_student("Bob", 82)
manager.show_average_grades()
def __init__(self, name):
self.name = name
self.grades = []
def add_grade(self, grade):
self.grades.append(grade)
def average_grade(self):
return sum(self.grades) / len(self.grades) if self.grades else 0
class GradeManager:
def __init__(self):
self.students = []
def add_student(self, name):
self.students.append(Student(name))
def get_student(self, name):
for student in self.students:
if student.name == name:
return student
return None
def add_grade_to_student(self, name, grade):
student = self.get_student(name)
if student:
student.add_grade(grade)
else:
print(f"Student {name} not found.")
def show_average_grades(self):
for student in self.students:
print(f"{student.name}'s average grade is {student.average_grade():.2f}")
# Example usage
manager = GradeManager()
manager.add_student("Alice")
manager.add_student("Bob")
manager.add_grade_to_student("Alice", 90)
manager.add_grade_to_student("Alice", 85)
manager.add_grade_to_student("Bob", 78)
manager.add_grade_to_student("Bob", 82)
manager.show_average_grades()
Code analysis:
StudentClass: represents a student, containing the student's name and grade list.add_gradeMethod used to add grades,average_gradeMethod used to calculate the average grade.GradeManagerClass: manages all students.add_studentMethod used to add a student,get_studentMethod used to find a student by name,add_grade_to_studentMethod used to add a grade for a specified student,show_average_gradesMethod used to display the average grade of all students.- Example usage section: created a
GradeManagerinstance, added two students, added grades for each student, and finally displayed each student's average grade.
Output result:
Alice's average grade is 87.50 Bob's average grade is 80.00Other extensions
Python3 Examples