# 编写一个“学生信息管理系统”
# 输入序号: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 简陋的学生信息管理系统的更多相关文章

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

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

  2. 【Python3.6+Django2.0+Xadmin2.0系列教程之二】学生信息管理系统(入门篇)

    上一篇我们已经创建好了一个Xadmin的基础项目,现在我们将在此基础上构建一个同样很基础的学生信息管理系统. 一.创建模型 模型是表示我们的数据库表或集合类,并且其中所述类的每个属性是表或集合的字段, ...

  3. 【Python3.6+Django2.0+Xadmin2.0系列教程之三(入门篇-下)】学生信息管理系统

    上一篇我们已经初步的构建起了一个学生管理系统的模型,现在接着来继续完善它吧. 1.上传图片/文件等资源 有时候需要添加一些附件,例如,新生刚入学,大家相互之间还不熟悉,希望能通过照片来加深印象,并且方 ...

  4. Java课设(学生信息管理系统)

    1.团队课程设计博客链接 http://www.cnblogs.com/Min21/p/7064093.html 2.个人负责模板或任务说明 设计登陆界面和学生信息界面的设计,学生信息的显示.退出等功 ...

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

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

  6. C++ 简单的学生信息管理系统

    // // main.cpp // 2013-7-17作业1 // // Created by 丁小未 on 13-7-17. // Copyright (c) 2013年 dingxiaowei. ...

  7. 学生信息管理系统v1.0

    昨天一个教师朋友找到我,告诉我现在学期末他工作比较忙.需要统计处理很多学生信息,想让我帮他做一个管理系统.实现的功能就是把WPS表格转化成Word文档,将每一个学生的信息都能够分开,并且要根据名字找到 ...

  8. Java 实现学生信息管理系统

    编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...

  9. 学生信息管理系统应用ios源码iPad版

    学生信息管理系统应用iPad版,该应用源码比较完整的,而且也很详细,这也是一款学校用的学生和老师管理系统,里面涉及到了很多ipad常用的控件,操作和数据存储. <ignore_js_op> ...

随机推荐

  1. SP5971 LCMSUM 数论

    题面 题目要我们求这个: \[\sum_{i=1}^n lcm(i,n)\] 开始化式子: \[\sum_{i=1}^{n} \frac{i*n}{gcd(i,n)}\] \[\sum_{d|n} \ ...

  2. 【POJ3087】Shuffle'm Up

    本题传送门 本题知识点:宽度优先搜索 模拟 + map 本题题意有点懵.就是单纯的把S1像例子那样插到S2里,根本不是什么宽搜题,因为只是一个方向就可以了.说是搜索题倒是有点意思,因为要查重. 不过c ...

  3. 【POJ3126】Prime Path

    本题传送门 本题知识点:宽度优先搜索 题意很简单.要找一个质数变到另一个质数的最少步数,两个质数都是4位数,变的时候只能变其中一位,变了的数也仍是质数. 思路也很简单,对每一位数进行修改,如果修改后的 ...

  4. hotspot的Heap Memory和Native Memory

    JVM管理的内存可以总体划分为两部分:Heap Memory和Native Memory.前者供Java应用程序使用的:后者也称为C-Heap,是供JVM自身进程使用的.Native Memory没有 ...

  5. 《Genius》

    Einstein is genius.         爱因斯坦是天才,这是一个毫无疑问的命题.他在专利局空闲之余写下的相对论,可以让我们学习很久一段时间,而且还不一定能学懂. 这部十集的电视连续剧是 ...

  6. 第08组 Beta冲刺(4/4)

    队名 八组评分了吗 组长博客链接(5分) ( https://www.cnblogs.com/leemelon/p/12040924.html ) 作业博客 [作业链接] (https://edu.c ...

  7. zookeeper acl认证机制及dubbo、kafka集成、zooviewer/idea zk插件配置

    ZooKeeper的ACL机制 zookeeper通过ACL机制控制znode节点的访问权限. 首先介绍下znode的5种操作权限:CREATE.READ.WRITE.DELETE.ADMIN 也就是 ...

  8. ubuntu16 安装 qBittorrent ( Linux下BT下载图形工具 )

    qBittorrent 是QT编写的一款BT下载软件,支持FreeBSD, Linux, macOS, OS/2, Windows: 官网:https://www.qbittorrent.org/ 在 ...

  9. 两行命令查看自己笔记本连接的wifi密码

    打开cmd.exe窗口 第一行命令 netsh wlan show profiles 可以查看所有曾经连接过的wifi 第二命令 netsh wlan show profiles "vivo ...

  10. 在 json4s 中自定义CustomSerializer

    到目前为止,Scala 环境下至少存在6种 Json 解析的类库,这里面不包括 Java 语言实现的 Json 类库.所有这些库都有一个非常相似的抽象语法树(AST).而 json4s 项目旨在提供一 ...