当前位置: 首页 > article >正文

小作业顺序表

class Students():
    def __init__(self, id, name, age):
        self.name = name
        self.age = age
        self.id = id

    def __str__(self):
        return f'学号:{self.id},名字:{self.name},年龄:{self.age}'


class StudentsList:
    def __init__(self, capacity=10):
        self.capacity = capacity
        self.size = 0
        self.data = {}

    def add(self, student):
        if len(self.data) >= self.capacity:
            print('已满,无法添加学生')
            return
        if student.id in self.data:
            print(f'{student.id}已添加')
        else:
            self.data[student.id] = student
            self.size += 1
            print(f'{student.name}已添加')

    def delete(self, id):
        if id in self.data:
            del self.data[id]
            self.size -= 1
            print(f'{id}的学生已删除')
        else:
            print('查无此人')

    def update(self, id, name=None, age=None):
        if id in self.data:
            s = self.data[id]
            if name:
                s.name = name
            if age:
                s.age = age
            print(f'{id}学号的学生信息已更新')
        else:
            print('查无此人')

    def list(self):
        if not self.data:
            print("学生列表为空!")
        else:
            print("当前列表:")
            for student in self.data.values():
                print(student)


student_list = StudentsList()
stu1 = Students(21001, '王五', 18)
stu2 = Students(21002, '马六', 20)
student_list.add(stu1)
student_list.add(stu2)
student_list.list()
student_list.delete(21001)
student_list.update(21002, '米老鼠', 22)
student_list.list()


http://www.kler.cn/a/404033.html

相关文章:

  • 基于CVE安全公告号,全面修复麒麟ARM系统OpenSSH漏洞
  • 《Python浪漫的烟花表白特效》
  • uniapp页面样式和布局和nvue教程详解
  • RPC框架负载均衡
  • 【降噪】自适应麦克风阵列系统
  • 使⽤MATLAB进⾏⽬标检测
  • Word 插入分节符页码更新问题
  • ChatGPT 与其他 AI 技术在短视频营销中的技术应用与协同策略
  • 用户无法登陆,修改用户进程数
  • 聊聊Flink:Flink中的时间语义和Watermark详解
  • Qt/C++离线地图的加载和交互/可以离线使用/百度和天地图离线/支持手机上运行
  • 优化算法|基于Deep-Q-Network(DQN)的邻域搜索算法求解分布式柔性作业车间调度问题
  • InstantStyle容器构建指南
  • 2035:【例5.2】平移数据
  • 1. 语音信号基础
  • 笔记记录 k8s操作
  • 鸿蒙生态崛起
  • 【Golang】——Gin 框架中的 API 请求处理与 JSON 数据绑定
  • 软件世界中的超级bug有哪些?
  • 最速下降法高斯牛顿法LM共轭梯度法预条件共轭梯度法
  • 51单片机之串口通讯
  • 「Mac玩转仓颉内测版24」基础篇4 - 浮点类型详解
  • 【linux】linux挂载网络磁盘-挂载windows的smb共享文件夹
  • 【HarmonyOS Next】鸿蒙实用装饰器一览(一)
  • Hive 函数(实例操作版2)
  • Three.js + AI:AI 算法生成 3D 萤火虫飞舞效果~