一、前言

相信很多小伙伴在学校期间都会被要求实现一个学生管理系统,很多是让用C语言实现,有的是要求Python。
这里通过python实现了一个学生管理系统,考试/交作业必备!

网上很多的学生管理系统版本是用列表来存储学生的,实际上这样并不是最好的实现方案。
既然学生的学号是唯一的,那我们可以直接使用字典来做,这样在查询学生是否存在的速度上会更快一些。而且更方便排序等。

<<点我获取完整源码,或关注左侧公众号,回复:学生


文章目录

  • 一、前言
  • 二、实现效果
  • 三、代码特点
  • 四、总结

二、实现效果

包含的功能(学号为唯一标识):

  1. 添加学生
  2. 修改学生信息
  3. 删除学生信息
  4. 查询单个学生信息
  5. 查询所有学生信息


还做了一些保护判断:

  1. 输入错误的序号会给予提示;
  2. 创建已存在学号的学生会提示“已存在”;
  3. 删除/修改不存在的学生会提示“不存在”;

<<点我获取完整源码,或关注左侧公众号,回复:学生


三、代码特点


上图菜单页的功能映射传递的实现方案往往更多的是下面这样:

 key = int(input("请选择功能(序号):"))if key==1: # key等于1时,调用增加学生的方法add_new_student()elif key==2:del_student()elif key==3: update_student()else:exit()

通过if else 判断key值来调用不同的方法,这样有个不好的地方是,当方法越来越多后,代码量也会增加不少,所以这里我使用了字典里面包含方法的方式来实现:

 func_dict = {1: add_new_student, 2: del_student, 3: update_student, 4:     search_student, 5: print_all_student, 6: exit}key = int(input("请选择功能(序号):"))func = func_dict.get(key)func() if func else print('输入错误!请重新输入!'+space)

这样哪怕增加的方法越来越多,也不会增加更多的代码。


四、总结

整个代码内容不多,实现也很简单,在我大学的时候,老师要求我们用C语言来写,现在越来越多的要求python了,用pytho实现比C语言会简单不少,毕竟语法简洁很多。
小伙伴们拿到源码后可自己进行diy,实现诸如排序、密码管理,批量操作的功能等。


最近在写的《从0实现自动化测试平台》专栏欢迎关注:

专栏教程地址:《从0实现自动化测试平台》
项目在线演示地址:http://121.43.43.59/ (帐号:admin 密码:123456)

本专栏会基于django+react,并结合这些年自己构建多个自动化测试平台的经验,从0开始,一步一步教会你实现一个完备的商用级自动化测试平台,真正意义上能够降本增效创造价值的平台。


Python版学生管理系统源码分享【考试/作业必备】相关推荐

  1. 学生签到系统c代码_C语言学生管理系统源码分享

    1 大家好2 我就是如假包换的...陈玲3 自从运营了C语言程序设计微信公众号4 很多粉丝都给我备注5 ...奇葩6 实在是不敢当7 也被人开始叫玲玲姐8 我知道9 很多人都想看我出境10 我本人也有 ...

  2. java计算机毕业设计微留学学生管理系统源码+数据库+系统+lw文档+mybatis+运行部署

    java计算机毕业设计微留学学生管理系统源码+数据库+系统+lw文档+mybatis+运行部署 java计算机毕业设计微留学学生管理系统源码+数据库+系统+lw文档+mybatis+运行部署 本源码技 ...

  3. java进销存系统源码_青云源码——最新企业进销存管理系统源码分享

    基于http://Asp.Net MVC4.0 + WebAPI + Knockout 技术,采用EasyUI为前台开发展示UI,Knockout主要负责前端的逻辑交互,再结合jQuery Ajax进 ...

  4. springboot租房管理系统源码分享

    项目描述 springboot租房管理系统源码分享,前端使用vue.js,后端使用springboot+hibernate. 运行环境 jdk8+tomcat8+mysql5.7+IntelliJ I ...

  5. 一套javassf门户网站管理系统源码分享

    淘源码:国内专业的免费源码下载平台 JAVA SSF项目框架源码 后台管理系统源码 一套以SpringMVC+Spring+Hibernate+Freemarker+Shiro+Lucene+Html ...

  6. 重温经典:Python版飞机大战源码 神器 玩游戏就玩自己开发的

    目录 导语 正文 一.环境安装 二.我方飞机 三.敌方飞机 四.控制键盘移动 五.检测子弹碰撞 六.效果图 总结 免费源码领取处: 往期文章推荐-- Python从入门到实战-- 绘图Turtle系列 ...

  7. java版坦克大战源码分享

    前言 利用摸鱼时间学了个java的游戏引擎FXGL 本游戏是基于jdk17和FXGL开发的 操作 按键 功能 WSAD 移动 空格 发射子弹 E 使用技能 道具说明 道具 玩家吃到 敌人吃到 星星 子 ...

  8. python版飞机大战源码和素材免费

    个人写的python飞机大战 初学python 里面有两个版本 一个是多敌机版 一个是单敌机版 点击打开链接

  9. python个人项目进度管理系统源码_漳州城投集团 | 城投地产集团开展管理体系优化咨询和计划进度管理系统项目建设...

    9月3日,漳州城投地产集团召开管理体系优化咨询暨计划进度管理系统项目启动会.漳州城投集团常务副总经理吴国伟.副总经理田明生,董事会秘书.投资发展部总经理方志瀚,漳州城投地产集团董事长.总经理黄超宁,深 ...

  10. 计算机毕业设计django基于python企业资产管理系统(源码+系统+mysql数据库+Lw文档)

    项目介绍 随着计算机技术的发展和网络的普及.采用当前流行的B/S模式以及3层架构的设计思想通过Python技术来开发此系统的目的是建立一个配合网络环境的企业资产管理系统的平台,这样可以有效地解决数据企 ...

最新文章

  1. 非常好用的Python图像增强工具,适用多个框架
  2. 【bzoj4408】[Fjoi 2016]神秘数 主席树
  3. linux 提示符 异常,linux终端提示符异常 bash-4.1$
  4. 软件工程(可行性研究讲解)
  5. 配对碱基链(信息学奥赛一本通-T1135)
  6. 漫步线性代数二十——快速傅里叶变换(下)
  7. 光棍节的快乐 NYOJ 451
  8. 源码分析Dubbo服务消费端启动流程
  9. 有了这些字体,才是高逼格的UI设计!
  10. ❤️《分布式 Dubbo+Zookenper+SpringBoot》(建议收藏)❤️
  11. 2021-06-25绝对定位的理解
  12. 如何用python创建文件_终于明了python如何创建文件
  13. java 可达性算法实现,垃圾标记阶段算法之可达性分析算法
  14. 小米游戏本bios更新_小米游戏本 | 笔记本Air 13.3″ 四核 | 笔记本Air 12.5″ | 笔记本Pro 15.6″BIOS设置...
  15. html文章整体居中,html如何实现文本上下居中
  16. ICCV2021 | 医学影像等小数据集的非自然图像领域能否用transformer?
  17. Excel VBA:数据管理与维护
  18. Coursera | Introduction to Data Science in Python(University of Michigan)| Assignment1
  19. oracle 导出owner,如何知道exp导出的dmp文件中owner是谁
  20. ChatGPT教程之深入了解魔术背后的技术

热门文章

  1. pythonyield详解_yield详解
  2. python类方法和静态方法_Python 中的方法、静态方法(static method)和类方法(class method)...
  3. linux 信号量_SystemV IPC通信信号量
  4. ERR Errors trying to SHUTDOWN. Check logs.
  5. UCBCS188 AI学习笔记(1)uninformed search (无启发函数搜索)
  6. python 24点题目分析_24点游戏的递归解法和Python实现
  7. stm32中如何避免等待_地坪漆施工中如何避免常见的小问题
  8. linux进程显示exit是怎么回事,linux 进程退出exit,_exit区别即atexit函数
  9. java实现对称加密—基本实现
  10. ASP.Net七大内置对象 (整理的不错,转过来参考)