Python学生信息管理系统的开发
# 第一题:设计一个全局变量,来保存很多个学生信息;学生(学号, 姓名,年龄);思考要用怎样的结构来保存;
# 第二题:在第一题基础上,完成:让用户输入一个新的学生信息(学号,姓名,年龄);你将其保存在全局变量中;并提供给用户查看当前有多少个学生的功能;
# 第三题:向用户提供根据学号查看指定学员具体信息,指定学号删除学员功能 # 用来保存学生的所有信息
stuInfos = []
# 全局变量
sno = ""
sName = ""
sAge = "" # 打印功能提示
def printMenu():
print("=" * 42)
print("*" * 10+"简单的学生信息管理系统"+"*" * 10)
print("=" * 42)
print("1.添加学生信息")
print("2.删除学生信息")
print("3.给定学号查询学生信息")
print("4.显示当前所有学生信息")
print("0.退出系统")
print("=" * 42) # (用户输入)获取一个学生的信息
def getInfo():
global newSno
global newSname
global newSage
# 这三个是全局变量,要对其进行修改,则要先声明
newSno = input("请输入学生的学号:")
newSname = input("请输入学生的姓名:")
newSage = input("请输入学生的性别:")
# 通过列表的形式把数据整合成一个整体,然后返回
return [newSno, newSname, newSage] # 添加学生信息
def addStuInfo():
result = getInfo()
newInfo = {}
newInfo['sno'] = result[0]
newInfo['sName'] = result[1]
newInfo['sAge'] = result[2]
stuInfos.append(newInfo) # # 删除学生信息
# def deleteStuInfo():
# stuId = input("请输入要查询学生的学号:")
# print("=" * 30)
# print("学生的信息如下:")
# print(" 学号 姓名 性别")
# for tempInfo in stuInfos:
# if stuId == tempInfo['sno']:
# stuInfos.remove(tempInfo['sno'])
# stuInfos.remove(tempInfo['sName'])
# stuInfos.remove(tempInfo['sAge']) # 给定学号查询学生信息
def selectStuInfo():
stuId = input("请输入要查询学生的学号:")
print("=" * 30)
print("学生的信息如下:")
print(" 学号 姓名 性别")
for tempInfo in stuInfos:
if stuId == tempInfo['sno']:
print("%s %s %s" % (tempInfo['sno'], tempInfo['sName'], tempInfo['sAge']))
break # 显示当前所有学生信息
def selectAllStuInfo():
print("=" * 30)
print("学生的信息如下:")
print("序号 学号 姓名 性别")
i = 1
for tempInfo in stuInfos:
print("%d %s %s %s" % (i, tempInfo['sno'], tempInfo['sName'], tempInfo['sAge']))
i += 1 # 主函数程序
def main():
while True:
# 打印提示信息
printMenu()
key = input("请输入你要选择的操作:")
if key == '1':
# 添加学生信息
addStuInfo()
elif key == "2":
pass
elif key == "3":
# 给定学号查询学生信息
selectStuInfo()
elif key == '4':
# 显示当前所有学生信息
selectAllStuInfo()
elif key == '0':
exit() # 调用主函数
main()
Python学生信息管理系统的开发的更多相关文章
- python 学生信息管理系统
python与数据库的例子 初始化数据库 链接数据库创建库和表并插入数据 init.py import pymysql sql_base='create database school;' sql_t ...
- Python基础案例练习:制作学生信息管理系统
一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3. ...
- 关于搬运CSDN上学生信息管理系统的阅读与二次开发
关于本篇博客内容,我大概分成了三个部分进行讲述:对于源代码的解读.二次重开发后程序的介绍和自己在做完对他人代码的解读和重开发后自己的一些感想. 一. 源代码的解读 在本部分的解读中主要分为三部分:该 ...
- java开发学生信息管理系统的实现(简洁易懂),适合计算机专业学生参考,课程设计、毕业论文设计参考等
编写一个简单的学生管理信息系统. 在oracle中设计一张学生表,以学号作为关键字. 其他学生信息有:姓名.手机号. 在进入系统时,显示如下菜单: ************************** ...
- python 04 学生信息管理系统
今天任务不多,做了学生信息管理系统1.0,使用字典存储学生个体信息,列表存储学生字典.注意dict定义要在循环体内,若定义成全局变量或循环体外,则旧数据会被新数据覆盖.dict属于可变类型数据,内容改 ...
- 【python免费代码】设计一个简单的学生信息管理系统
文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...
- python3 简陋的学生信息管理系统
# 编写一个“学生信息管理系统”# 输入序号:1. 输入学生信息,学生信息包括:id,name,age,gender(用什么数据类型保存?)# 2. 查询:输入学生姓名和id,显示学生个人信息# 3. ...
- Node.js小项目——学生信息管理系统
这是迄今为止第一次接触后端的东西,是一个很小的项目,但是对于前端学习入门很好.我是先学了VUE框架再学的Node,学起来比较轻松,不过每个人都有自己的学习方法️ 一.项目描述 学生信息管理系统,可以实 ...
- Java课程设计---学生信息管理系统需求分析及总体设计
按照软件工程实践的原则,开发大型程序需要经历需求分析.总体设计.详细设计.编码实现.系统测试.系统维护等几个阶段. 1.需求分析 本阶段是整个软件开发过程中最重要的环节.通过了解实际运行的系统或与用户 ...
随机推荐
- SpringBoot整合全局异常处理&SpringBoot整合定时任务Task&SpringBoot整合异步任务
============整合全局异常=========== 1.整合web访问的全局异常 如果不做全局异常处理直接访问如果报错,页面会报错500错误,对于界面的显示非常不友好,因此需要做处理. 全局异 ...
- eclipse常用快捷键和插件
1.快捷键 找实现类 ctrl +T 抽取為方法:alt+shift+M (Method) 方法返回值 ctrl+1 enter 2.在做Java项目的时候如何把第三方的jar包一起打包成jar文件 ...
- 使用git和github管理自己的项目---基础操作学习[转]
原文: https://segmentfault.com/a/1190000003728094 我是通过看廖雪峰的git教程学习的,真的是极好的,以下是我学习过程中的总结,记录下来,方便自己参考以熟悉 ...
- 在 uniGUI 中实现自动弹窗后延迟几秒关闭 — Toast 功能
在 uniGUI 中实现自动弹窗后延迟几秒关闭 — Toast 功能. uniGUI 的客户端使用 EXTJS 6 ,本就有 Toast 功能. 但UniGui 官方没有相应的控件,我们如何使用 EX ...
- Web QQ 协议 登录加密算法 —— VC++实现
BOOL ToHexStr(const CHAR * lpStr, int nSrcLen, CHAR * lpHex, int nDestLen) { const CHAR cHexTable[] ...
- c++不定参数函数
不定参数当年做为C/C++语言一个特长被很多人推崇,但是实际上这种技术并没有应用很多.除了格式化输出之外,我实在没看到多少应用.主要原因是这种技术比较麻烦,副作用也比较多,而一般情况下重载函数也足以替 ...
- python3之模块SMTP协议客户端与email邮件MIME对象
转载自https://www.cnblogs.com/zhangxinqi/p/9113859.html 阅读目录 1.smtplib模块的常用类与方法 2.处理邮件MIME 3.实例 (1)使用HT ...
- python去除字符串里的非数字
filter(lambda ch: ch in ‘0123456789.’, crazystring)
- backtrace和backtrace_symbols
一般察看函数运行时堆栈的方法是使用GDB(bt命令)之类的外部调试器,但是,有些时候为了分析程序的BUG,(主要针对长时间运行程序的分析),在程序出错时打印出函数的调用堆栈是非常有用的. 在glibc ...
- ASP.NET MVC5高级编程 之 数据注解和验证
客户端验证逻辑会对用户向表单输入的数据给出一个即时反馈.而之所以需要服务器端验证,是因为来自网络的信息都是不能被信任的. 当在ASP.NET MVC设计模式上下文中谈论验证时,主要关注的是验证模型的值 ...