PYTHON学生成绩管理系统

该代码示例展示了一个使用Python编写的简单学生成绩管理系统,包括Student类和StudentManager类。Student类用于存储学生姓名、ID及分数列表,而StudentManager类用于管理学生信息,添加学生、分数以及获取平均分。系统能够计算并打印每个学生的平均成绩。
摘要由CSDN通过智能技术生成

python学生成绩管理系统,一个简单的示例:

class Student:
    def __init__(self, name, id):
        self.name = name
        self.id = id
        self.scores = []

    def add_score(self, score):
        self.scores.append(score)

    def average_score(self):
        return sum(self.scores) / len(self.scores)

class StudentManager:
    def __init__(self):
        self.students = {}

    def add_student(self, name, id):
        self.students[id] = Student(name, id)

    def add_score(self, id, score):
        if id in self.students:
            self.students[id].add_score(score)
        else:
            print("Student with ID {} not found.".format(id))

    def get_average_score(self, id):
        if id in self.students:
            return self.students[id].average_score()
        else:
            print("Student with ID {} not found.".format(id))

    def print_all_students(self):
        for id, student in self.students.items():
            print("ID: {}, Name: {}, Average Score: {}".format(id, student.name, student.average_score()))

# Example usage:
manager = StudentManager()

# Add students
manager.add_student("Alice", "1001")
manager.add_student("Bob", "1002")
manager.add_student("Charlie", "1003")

# Add scores
manager.add_score("1001", 90)
manager.add_score("1002", 80)
manager.add_score("1001", 95)
manager.add_score("1003", 85)

# Print average scores
print("Alice's average score:", manager.get_average_score("1001"))
print("Bob's average score:", manager.get_average_score("1002"))
print("Charlie's average score:", manager.get_average_score("1003"))

# Print all students
manager.print_all_students()

它的输出结果如下

C:\Users\fligh\PycharmProjects\classstudent\venv\Scripts\python.exe C:\Users\fligh\PycharmProjects\classstudent\main.py 
Alice's average score: 92.5
Bob's average score: 80.0
Charlie's average score: 85.0
ID: 1001, Name: Alice, Average Score: 92.5
ID: 1002, Name: Bob, Average Score: 80.0
ID: 1003, Name: Charlie, Average Score: 85.0
  • 0
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值