zoukankan      html  css  js  c++  java
  • 设计一个学生类,一个班级类,实现向班级中添加,删除,查看学生,按照指定顺序排序。(初学到面向对象请多指教)

    # 建立学生类
    class Student:
    def __init__(self,name,num,age,score):
    self.name = name
    self.num = num
    self.age = age
    self.score = score
    def __str__(self):
    return '姓名:{},学号:{},年龄:{},成绩:{}'.format(self.name,self.num,self.age,self.score)
    # 班级类
    class Class:
    def __init__(self,name):
    self.name = name
    self.stu_list = []
    self.stu_dict = {}
    # 添加学生
    def add_stu(self,stu):
    self.stu_list.append(stu)
    self.stu_dict[stu.num] = stu
    # 删除学生
    def del_stu(self,num):
    # 从字典中删除
    s = self.stu_dict.pop(num)
    # 从列表中删除
    self.stu_list.reverse(s)
    #学生排序
    def sort_stu(self,key = None, reverse = False):
    self.stu_list.sort(key=key,reverse=reverse)
    #查找学生
    def get_stu(self,num):
    return self.stu_dict.get(num)
    #展示学生信息
    def show_stu(self):
    for s in self.stu_list:
    print(s)
    from random import randint
    # 创建班级对象
    c = Class('ZZ-JY-PY1805')
    # 添加学生
    for i in range(10):
    name = 'stu'+str(i+1)
    num = 100 + i
    age = randint(20,30)
    score = randint(0,100)
    #创建学生对象
    stu = Student(name,num,age,score)
    #添加到班级对象中
    c.add_stu(stu)
    #按照成绩
    c.sort_stu(key=lambda s:s.score,reverse=True)
    #展示学生信息
    c.show_stu()
    # 查找num = 104的学生
    s = c.get_stu(104)
    print(s)
  • 相关阅读:
    PHP编程资源
    JSP+Java编程资源
    Word、Excel办公书的资源下载
    听你说
    一些好看的渐变色(配色)网站推荐
    js判断数组中是否包含某个元素
    你才是你故事的作者
    vue-color 颜色选择器插件用法介绍
    vue-cli3 导入.md文件,vue中markdown文件的解析与渲染
    新版 animate.css 在vue中的正确使用
  • 原文地址:https://www.cnblogs.com/jiangtao159/p/9411271.html
Copyright © 2011-2022 走看看