#coding:utf-8
2 info = []#全局变量
3 def info_print():
4 print("请选择功能:")
5 print("1:添加学员")
6 print("2:删除学员")
7 print("3:修改学员")
8 print("4:查询学员")
9 print("5:显示学员")
10 print("6:退出系统")
11 #添加学员信息
12 def add_info():
13 new_id = input("请输入学号:")
14 new_name = input("请输入名字:")
15 new_tel = input("请输入手机号:")
16 #该表全局变量的值
17 global info
18 #检测用户输入的名字是否存在,存在则报错
19 for i in info:
20 if new_name == i["name"]:
21 print("该用户已经存在!")
22 return #返回值和退出当前函数
23 #若果当前用户不存在则添加该学员信息
24 info_dict = {}#创建一个新的字典
25 #将学员信息追加到字典当中
26 info_dict["id"] = new_id
27 info_dict["name"] = new_name
28 info_dict["tel"] = new_tel
29 #将学员信息的字典追加到列表中
30 info.append(info_dict)
31 #删除学员信息
32 def del_info():
33 del_name = input("请输入需要删除的学员的id:")
34 global info
35 for i in info:
36 if del_name == i["name"]:
37 info.remove(i)
38 break
39 else:
40 print("该学员不存在!")
41 print(info)
42 #修改学员信息
43 def change_info():
44 global info
45 change_name = input("请输入需要修改的学员信息:")
46 for i in info:
47 if change_name == i["name"]:
48 i["tel"] = input("请输入新的手机号:")
49 break
50 else:
51 print("该学员不存在!")
52 print(info)
53 #查询学员信息
54 def serch_info():
global info
56 serch_name = input("请输入需要查找的学员姓名:")
57 for i in info:
58 if serch_name == i["name"]:
59 #学员存在,打印学员信息
60 print("学员信息")
61 print("学员的学号i['id'],姓名i['name'],手机号i[ 'tel']}")
62 break
63 else:
64 print("该学员不存在")
65 def display_all():
66 global info
67 print(info)
68 while True:
69 info_print()
70 user_num = int(input("请输入功能序号:"))
71 if user_num == 1:
72 print("添加")
73 add_info()
74 elif user_num == 2:
75 print("删除")
76 del_info()
77 elif user_num == 3:
78 print("修改")
79 change_info()
80 elif user_num == 4:
81 print("查询")
82 serch_info()
83 elif user_num == 5:
84 print("显示所有")
85 display_all()
86 elif user_num == 6:
87 print("退出系统")
88 break
89 else:
90 print("输入错误,请重新输入:")

相对于c语言的代码量,在实现相同的功能时,python的代码量相对少很多。而且在以希望数据上的操作来说也相对简便很多!

python写一个学生信息管理系统的更多相关文章

  1. 一个低级shell简易学生信息管理系统-新增登陆注册功能

    还有bug 不修改了 小声bb一下 这玩意真的要控制版本 随手保存 本来有个超完整的版本 一开心被我rm - f 了 后续还出现了 更多的bug 仔细仔细 源码如下: record=stu.db if ...

  2. Python基础案例练习:制作学生信息管理系统

    一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3. ...

  3. 【JAVA】简陋的学生信息管理系统

    因为之前写了一个学生信息管理系统,但还是处于命令行界面,不美观,于是打算做一个完整的界面出来. 在网上查阅资料后发现C++本身是不支持图形化界面的(可以使用第三方的Qt来做) 权衡之下还是选择了JAV ...

  4. python3 简陋的学生信息管理系统

    # 编写一个“学生信息管理系统”# 输入序号:1. 输入学生信息,学生信息包括:id,name,age,gender(用什么数据类型保存?)# 2. 查询:输入学生姓名和id,显示学生个人信息# 3. ...

  5. c++学生信息管理系统(window控制台实现鼠标点击操作)

    翻起大一时写过的作业代码--一个学生信息管理系统,当时不会使用QT,不会MFC等库,只会c++,但是又想做一个有界面的,能够实现鼠标操作的程序.于是绞尽脑汁查资料,自己造轮子,最终写出来了下面的这个现 ...

  6. 【python免费代码】设计一个简单的学生信息管理系统

    文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...

  7. Python学生信息管理系统的开发

    # 第一题:设计一个全局变量,来保存很多个学生信息:学生(学号, 姓名,年龄):思考要用怎样的结构来保存:# 第二题:在第一题基础上,完成:让用户输入一个新的学生信息(学号,姓名,年龄):你将其保存在 ...

  8. python 04 学生信息管理系统

    今天任务不多,做了学生信息管理系统1.0,使用字典存储学生个体信息,列表存储学生字典.注意dict定义要在循环体内,若定义成全局变量或循环体外,则旧数据会被新数据覆盖.dict属于可变类型数据,内容改 ...

  9. 基于数据库MySQL的简易学生信息管理系统

    通过这几天学习Mysql数据库,对其也有了基本的了解,为了加深印象,于是就写了一个最简易的学生信息管理系统. 一:基本要求 1.通过已知用户名和密码进行登录: 2.可以显示菜单: 3.可以随时插入学生 ...

随机推荐

  1. Inkscape 太慢

    问题: 在画板上图像较多时, 会在粘贴 / 删除 时会陷入长时间的等待 解决: 最佳: Ubuntu上面的比windows上的快上几十倍, 测试比较, 感觉并不是Ubuntu上多用了GPU, 总之, ...

  2. React Hooks: useContext All In One

    React Hooks: useContext All In One useContext https://reactjs.org/docs/hooks-reference.html#useconte ...

  3. html template tag

    html template tag const tagName = `emoji-element`; const template = document.createElement('template ...

  4. how to get selected option text in javascript

    how to get selected option text in javascript refs https://developer.mozilla.org/en-US/docs/Web/API/ ...

  5. 瞧一瞧React Fiber

    啥是React Fiber? React Fiber,简单来说就是一个从React v16开始引入的新协调引擎,用来实现Virtual DOM的增量渲染. 说人话:就是一种能让React视图更新过程变 ...

  6. Redis的数据结构与应用场景

    一.Redis简介 Redis 是一个开源的使用 ANSI C 语言编写.遵守 BSD 协议.支持网络.可基于内存.分布式.可选持久性的键值对(Key-Value)存储数据库,并提供多种语言的 API ...

  7. 利用Metasploit 打入ThinkPHP内网...

    出品|MS08067实验室(www.ms08067.com) 本文作者:dch(Ms08067实验室 SRSP TEAM小组成员) 一.利用Metasploit进行攻击的流程图   Metasploi ...

  8. [转]关于特征点法、直接法、光流法slam的对比

    转载网址:https://blog.csdn.net/weixin_38203573/article/details/79787499 特征点法: 通过特征点匹配来跟踪点,计算几何关系得到R,t,BA ...

  9. Differences between Stack and Heap

    本文转载自Differences between Stack and Heap Stack vs Heap So far we have seen how to declare basic type ...

  10. 浮动引发的高度塌陷问题及其解决方法(BFC相关概念及性质)

    浮动引发的高度塌陷问题 高度塌陷问题的产生 BFC(Block Formatting Context)的引入 元素开启BFC后的特点 开启BFC的元素不会被其他浮动元素所覆盖 开启BFC的元素不会发生 ...