Python学生成绩管理

3、实验题目:学生成绩管理

将学生对象存入列表中,并按成绩对学生进行排序,并获取成绩最高和成绩最低的学生信息,并将最高分和最低分的学生从列表删除,最后再对列表进行拷贝,对拷贝的列表进行翻转输出。

import copy
class Student:
    def __init__(self, sno, name, age, score):
        self.sno = sno
        self.name = name
        self.age = age
        self.score = score

    def __str__(self):
        return '学号:'+self.sno+',姓名:'+self.name+',年龄:'+self.age+',成绩:'+self.score


if __name__ == '__main__':
    ls1 = [Student('181010', '黎明', '18', '90'), Student('181256', '王三千', '20', '89'), Student('182345', '国谷机', '18', '98'), Student('181568', '白开水', '19', '67')]
    ls1.sort(key=lambda stu: stu.score)
    print("成绩最高的学生信息:", ls1[3])
    print("成绩最低的学生信息:", ls1[0])
    del ls1[3], ls1[0]
    ls2 = copy.deepcopy(ls1)
    ls2.reverse()
    for i in range(2):
        print(ls2[i])

重点:
1.面向对象
2. _str _print输出时自动调用
3. sort排序
4. del 删除
5. copy.deepcopy()深拷贝
6. reverse()翻转
Python学生成绩管理
按照书上的例子写的!

上一篇:[Leetcode]4.寻找两个正序数组的中位数


下一篇:QT | 第二章 基本语法