python3 简陋的学生信息管理系统
# 编写一个“学生信息管理系统”
# 输入序号:1. 输入学生信息,学生信息包括:id,name,age,gender(用什么数据类型保存?)
# 2. 查询:输入学生姓名和id,显示学生个人信息
# 3. 修改:输入学生姓名或者id,可以对学生信息进行修改
# 4. 删除:输入学生姓名或者id,删除对应学生信息 代码如下:::
def increase():
student = [input("学号:"), input("姓名:"), input("年龄:"), input("性别:")]
students.append(student) def query():
s = input("输入学生学号或姓名:")
if s.isdigit() == True:
id = s
# enumerate()是python的内置函数、适用于python2.x和python3.x
# enumerate在字典上是枚举、列举的意思
# enumerate参数为可遍历/可迭代的对象(如列表、字符串)
# enumerate多用于在for循环中得到计数,利用它可以同时获得索引和值,即需要index和value值的时候可以使用enumerate
for station, item in enumerate(students):
if id in item:
print("此学生信息为:", item)
break
if station + 1 == len(students):
print("查无此人")
else:
name = s
for station, item in enumerate(students):
if name in item:
print("此学生信息为:", item)
break
if station + 1 == len(students):
print("查无此人") def modify():
s = input("输入学生学号或姓名:")
if s.isdigit() == True:
id = s
for item in students:
if id in item:
print(item)
while 1:
print("--选择修改具体信息--")
n = int(input("请输入要进行的操作序号:1.学号 2.姓名 3.年龄 4.性别"))
if n == 1:
item[0] = input("输入修改后的学号:")
elif n == 2:
item[1] = input("输入修改后的姓名:")
elif n == 3:
item[2] = input("输入修改后的年龄:")
else:
item[3] = input("输入修改后的性别:")
print("--修改完成--")
break
else:
name = s
for item in students:
if name in item:
print(item)
while 1:
print("--选择修改具体信息--")
n = int(input("请输入要进行的操作序号:1.学号 2.姓名 3.年龄 4.性别"))
if n == 1:
item[0] = input("输入修改后的学号:")
elif n == 2:
item[1] = input("输入修改后的姓名:")
elif n == 3:
item[2] = input("输入修改后的年龄:")
else:
item[3] = input("输入修改后的性别:")
print("--修改完成--")
break
def remove():
s = input("输入学生学号或姓名:")
if s.isdigit() == True:
id = s
for item in students:
if id in item:
i = students.index(item)
del(students[i])
else:
name = s
for item in students:
if name in item:
i = students.index(item)
del(students[i]) if __name__ == '__main__': students = [["", "王二麻子", "", "女"], ["", "张三", "", "男"]]
while 1:
print("-----------------------进入主界面--------------------------")
print("---------------1.增加 2.查询 3.修改 4.删除-----------------")
n = int(input("请输入:"))
if n == 1:
increase() #调用增加函数
elif n == 2:
query() #调用查询函数
elif n == 3:
modify() #调用修改函数
else:
remove() #调用删除函数
print(students)
print("-----------------------------------------------------------")
运行结果如下:
-----------------------进入主界面--------------------------
---------------1.增加 2.查询 3.修改 4.删除-----------------
请输入:1
学号:3
姓名:李四
年龄:17
性别:男
[['', '王二麻子', '', '女'], ['', '张三', '', '男'], ['', '李四', '', '男']]
-----------------------------------------------------------
-----------------------进入主界面--------------------------
---------------1.增加 2.查询 3.修改 4.删除-----------------
请输入:2
输入学生学号或姓名:2
此学生信息为: ['', '张三', '', '男']
[['', '王二麻子', '', '女'], ['', '张三', '', '男'], ['', '李四', '', '男']]
-----------------------------------------------------------
-----------------------进入主界面--------------------------
---------------1.增加 2.查询 3.修改 4.删除-----------------
请输入:3
输入学生学号或姓名:3
['', '李四', '', '男']
--选择修改具体信息--
请输入要进行的操作序号:1.学号 2.姓名 3.年龄 4.性别2
输入修改后的姓名:周五
--修改完成--
[['', '王二麻子', '', '女'], ['', '张三', '', '男'], ['', '周五', '', '男']]
-----------------------------------------------------------
-----------------------进入主界面--------------------------
---------------1.增加 2.查询 3.修改 4.删除-----------------
请输入:4
输入学生学号或姓名:3
[['', '王二麻子', '', '女'], ['', '张三', '', '男']]
-----------------------------------------------------------
还有许多可以优化的地方,等我继续学习一下哈哈
python3 简陋的学生信息管理系统的更多相关文章
- 【JAVA】简陋的学生信息管理系统
因为之前写了一个学生信息管理系统,但还是处于命令行界面,不美观,于是打算做一个完整的界面出来. 在网上查阅资料后发现C++本身是不支持图形化界面的(可以使用第三方的Qt来做) 权衡之下还是选择了JAV ...
- 【Python3.6+Django2.0+Xadmin2.0系列教程之二】学生信息管理系统(入门篇)
上一篇我们已经创建好了一个Xadmin的基础项目,现在我们将在此基础上构建一个同样很基础的学生信息管理系统. 一.创建模型 模型是表示我们的数据库表或集合类,并且其中所述类的每个属性是表或集合的字段, ...
- 【Python3.6+Django2.0+Xadmin2.0系列教程之三(入门篇-下)】学生信息管理系统
上一篇我们已经初步的构建起了一个学生管理系统的模型,现在接着来继续完善它吧. 1.上传图片/文件等资源 有时候需要添加一些附件,例如,新生刚入学,大家相互之间还不熟悉,希望能通过照片来加深印象,并且方 ...
- Java课设(学生信息管理系统)
1.团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模板或任务说明 设计登陆界面和学生信息界面的设计,学生信息的显示.退出等功 ...
- 基于数据库MySQL的简易学生信息管理系统
通过这几天学习Mysql数据库,对其也有了基本的了解,为了加深印象,于是就写了一个最简易的学生信息管理系统. 一:基本要求 1.通过已知用户名和密码进行登录: 2.可以显示菜单: 3.可以随时插入学生 ...
- C++ 简单的学生信息管理系统
// // main.cpp // 2013-7-17作业1 // // Created by 丁小未 on 13-7-17. // Copyright (c) 2013年 dingxiaowei. ...
- 学生信息管理系统v1.0
昨天一个教师朋友找到我,告诉我现在学期末他工作比较忙.需要统计处理很多学生信息,想让我帮他做一个管理系统.实现的功能就是把WPS表格转化成Word文档,将每一个学生的信息都能够分开,并且要根据名字找到 ...
- Java 实现学生信息管理系统
编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...
- 学生信息管理系统应用ios源码iPad版
学生信息管理系统应用iPad版,该应用源码比较完整的,而且也很详细,这也是一款学校用的学生和老师管理系统,里面涉及到了很多ipad常用的控件,操作和数据存储. <ignore_js_op> ...
随机推荐
- git 中文文件名乱码
git 默认中文文件名是 \xxx\xxx 等八进制形式,是因为 对0x80以上的字符进行quote. 只需要设置core.quotepath设为false,就不会对0x80以上的字符进行quote. ...
- UE4的多线程
1. 源代码 AsyncWork.h 2. 多线程的使用 参考文档:https://wiki.unrealengine.com/Using_AsyncTasks 当我们需要执行一个需要很长时间的任务时 ...
- 拼图验证码 js,vue
可查看github网站
- 报表导出之easypoi的应用
报表导出有很多种方法,像之前我有写过的jxl,poi,jasperreport又或者各种商业软件,这次来简单介绍下用了许久的开源轮子easypoi. easypoi的底层原理就不介绍了.因为官方文档的 ...
- 【Alpha】“北航社团帮”小程序v1.0发布声明
我们的"北航社团帮"小程序发布啦!!! Alpha版本功能 功能列表和详情图 模块 功能 登录 授权登录,游客模式,无需填写信息 活动展示 首页轮播热度最高的四个活动,查看活动详情 ...
- 将文件File转换成byte数组
代码如下: /** * 将文件转换成byte数组 * @param filePath * @return */ public static byte[] File2byte(File tradeFil ...
- oc界面开发整理
oc界面开发整理 ViewController.h from test82 #import <UIKit/UIKit.h> @interface ViewController : UIVi ...
- malloc分配到一块内存,读写操作时却发生segmentation falt的奇怪问题。
期初现象:malloc一块内存,读写操作时发生segmentation falt.一般来讲malloc倘若失败应该抛出异常,所以malloc返回一个指针后,这个指针应该都是可用的,况且是进行读操作. ...
- JSON字符串转实体对象
JSON转实体两种方式 代码片段 ; i < dt.Rows.Count; i++) { //Json字符串 string designJson = dt.Rows[i]["Desig ...
- (原)关于使用imagemagick将gif叠加到图片或者画布上的方法,以及疑难杂症
今天因为项目过程中,有一个小需求,需要将一个指定的gif按照指定大小,叠加到画布的指定位置上,本来对于熟悉这块的人,简直就是小菜一碟哈,但本人因为对imagemagick的不熟悉,导致在这个需求上摸索 ...