# 编写一个“学生信息管理系统”
# 输入序号: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. jQuery基础案例

    一.隔行换色 <!DOCTYPE html> <html> <head> <meta charset="UTF-8"> <ti ...

  2. R 语言输入输出 读取命令函参数

    输入数据 使用键盘输入数据 只能处理小样本,很少使用 在创建 data.txt 字符串之后,用函数 read.table() 创建数据框 data.1.这种方法可以让我们把数据嵌入到R代码中,此处切记 ...

  3. css选择指定元素

    .butSpan:){ margin-left: 10px; } nth-child(n+2)括号内可以是公式 可是是数字

  4. EAccessViolation

    Access Violation(非法访问),General Protection Fault(一般保护性错误)或者Invalid Page Fault(无效页面错误),虽然说法不一样,但本质上总是由 ...

  5. Linux 删除文件未释放空间问题处理,下清空或删除大文件

    linux里的文件被删除后,空间没有被释放是因为在Linux系统中,通过rm或者文件管理器删除文件将会从文件系统的目录结构上解除链接(unlink).然而如果文件是被打开的(有一个进程正在使用),那么 ...

  6. windows 10环境下安装Tensorflow-gpu

    网上有很多教程,特别是简写上的写的都还算比较详细.但我自己还是遇到了几个坑,希望对深度学习有兴趣的同学遇到跟我一样的坑,希望这份记录能帮助到你. 问题一:要不要使用Anaconda? 我看极客时间上的 ...

  7. oracle使用Union时遇到列格式clob和varchar2不符,不能转的问题

    其实这个很简单,思路就是把clob转为varchar,在查询的时候使用dbms_lob.substr(coulmn,4000):就可以把指定列从clob转化为varchar2.

  8. Spring Cloud-新一代Web框架微服务

    序言 springcloud是微服务架构的集大成者,将一系列优秀的组件进行了整合.基于springboot构建,对我们熟悉spring的程序员来说,上手比较容易. 通过一些简单的注解,我们就可以快速的 ...

  9. java agent 详细介绍 -javaagent参数

    java agent 详细介绍 简介 java agent是java命令的一个参数.参数 javaagent 可以用于指定一个 jar 包,并且对该 java 包有2个要求: 这个 jar 包的MAN ...

  10. 运维笔记--线上服务器git环境配置

    场景描述: 我们采用git去管理代码分支,本地开发环境,线上服务器多数情况下也会使用git去管理程序代码,那么新的一台服务器,如果指定了目标路径作为代码存放路径,该如何配置git环境, 以达到跟远程服 ...