#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. Leetcode(94)-二叉树的中序遍历

    给定一个二叉树,返回它的中序 遍历. 示例: 输入: [1,null,2,3] 1 \ 2 / 3 输出: [1,3,2] 思路:和上篇的前序遍历一样,同样有递归和非递归的做法 (1)递归 vecto ...

  2. Netty(二)Netty 与 NIO 之前世今生

    2.1 Java NIO 三件套 在 NIO 中有几个核心对象需要掌握:缓冲区(Buffer).选择器(Selector).通道(Channel). 2.1.1 缓冲区 Buffer 1.Buffer ...

  3. super fast sort algorithm in js

    super fast sort algorithm in js sort algorithm Promise.race (return the fast one) Async / Await // c ...

  4. HTML5 & canvas fingerprinting

    HTML5 & canvas fingerprinting demo https://codepen.io/xgqfrms/full/BaoMWMp window.addEventListen ...

  5. vscode & peacock extension

    vscode & peacock extension https://marketplace.visualstudio.com/items?itemName=johnpapa.vscode-p ...

  6. 13_MySQL如何去除结果集中的重复记录

    本节所涉及的sql语句 -- 去除结果集中的重复记录 SELECT job FROM t_emp; SELECT DISTINCT job FROM t_emp; SELECT DISTINCT jo ...

  7. SSL/TLS协议详解(中)——证书颁发机构

    本文转载自SSL/TLS协议详解(中)--证书颁发机构 导语 上一篇中,我们讨论了关于Diffie Hellman算法的SSL/TLS密钥交换.我们最终认为需要第三方来验证服务器的真实性,并提出了证书 ...

  8. 【HTB靶场系列】靶机Carrier的渗透测试

    出品|MS08067实验室(www.ms08067.com) 本文作者:大方子(Ms08067实验室核心成员) Hack The Box是一个CTF挑战靶机平台,在线渗透测试平台.它能帮助你提升渗透测 ...

  9. idea分布式创建子模块后不能创建java文件

    问题描述:多模块情况下,创建java文件,找不到java类,如下图,即使手动创建,在里面编写内容也没有任何反应. 解决方案:右键将文件标记为Sources Root便可以了,如果想要标记为资源文件的话 ...

  10. 微信小程序(一)-工具创建和结构配置说明 Stable Build

    按装前特别说明: windows最好下载32位的,不然用到用到后面就出现"网络连接失败",然后就登录不上去了,打不开编辑器了! 问题 : 微信开发者工具网络连接失败, " ...