python之学生信息管理系统
1 #!usr/bin/python
2 #encoding=utf-8
3
4 #1. 打印学生管理系统界面
5 def printStd():
6 print ("*"*50)
7 print(" 学生管理系统V0.1 ")
8 print(" 1.添加学生信息")
9 print(" 2.查找学生信息")
10 print(" 3.删除学生信息")
11 print(" 4.遍历学生信息")
12 print(" 5.修改学生信息")
13 print(" 6.退出学生信息")
14 print ("*"*50)
15 choice = input("请输入需要办理业务的序号:")
16 if choice <= 6 and choice > 0:
17 return choice
18 else:
19 print("输入有误,请重新输入")
20 printStd()
21 #2.选择功能:新增、查找、删除、修改、遍历、退出
22 #2.1 选择菜单
23 def makeChoice(choice):
24 if choice == 1:
25 addStd()
26 elif choice ==2:
27 findStd()
28 elif choice == 3:
29 delStd()
30 elif choice ==4:
31 showStd()
32 elif choice ==5:
chgStd()
34 elif choice ==6:
35 exitStd()
36 else:
37 print ("输入有误,请重新输入需要办理业务的序号,谢谢!")
38 printStd()
39 #2.2 添加学生信息
40 def addStd():
41 stdName = raw_input("请输入学生姓名:")
42 stdId = input("请输入学生学号:")
43 stdAge = input("请输入学生年龄:")
44 stdList = {}
45 stdList['Name'] = stdName
46 stdList['Id'] = stdId
47 stdList['Age'] = stdAge
48 std.append(stdList)
49 print("%-20s%s%15s"%('姓名:','学号:','年龄:'))
50 for temp in std:
51 print("%-20s%d%15d"%(temp['Name'],temp['Id'],temp['Age']))
52 #2.3 查找学生信息
53 def findStd():
54 #stdName = raw_input("请输入需要查找的学生姓名:")
55 stdId = input("请输入需要查找学生的学号:")
56 flag = 0
57 for temp in std:
58 if stdId == temp['Id']:
59 flag = 1
60 break
61 else:
62 continue
if flag == 1:
64 print("您要查找的学生信息如下:\n姓名:%s 学号:%d 年龄:%d"%(temp['Name'],temp['Id'],temp['Age']))
65 else:
66 print("很抱歉,系统不存在该学生信息!")
67
68 #2.4 删除学生信息
69 def delStd():
70 stdId = input("请输入需要删除学生的学号:")
71 flag = 0
72 for temp in std:
73 if stdId == temp['Id']:
74 indexId = std.index(temp)
75 flag = 1
76 break
77 else:
78 continue
79 if flag ==1:
80 assure = raw_input ("确认是否删除?(yes or no):")
81 if assure == "yes":
82 del std[indexId]
83 print("恭喜您已成功删除该新学生了!")
84 else:
85 print("您放弃删除该学生信息了!")
86 else:
87 print("很抱歉,系统不存在该学生信息!")
88
89 #2.5 遍历所有学生信息:
90 def showStd():
print("所有学生信息如下:")
91 print("%-20s%s%15s"%('姓名:','学号:','年龄:')
92 for temp in std:
93 print("%-20s%d%15d"%(temp['Name'],temp['Id'],temp['Age']))
94 #2.6 修改学生信息:
95 def chgStd():
96 stdId = input("请输入需要修改学生的学号:")
97 flag = 0
98 for temp in std:
99 if stdId == temp['Id']:
100 flag = 1
101 assure = raw_input ("确认是否修改?(yes or no):")
102 if assure == "yes":
103 condition= input ("修改名字:0 修改年龄:1 全部修改:2 请输入相应序号:")
104 if condition == 0:
105 newName = raw_input ("请输入修改后的姓名:")
106 temp['Name'] = newName
107 elif condition ==1:
108 temp['Age'] = input("请输入修改后的年龄:")
109 else:
110 newName = raw_input ("请输入修改后的姓名:")
111 temp['Name'] = newName
112 temp['Age'] = input("请输入修改后的年龄:")
113 print("恭喜您已修改成功!")
114 break
115 else:
116 print("您已放弃修改了!")
117 break
118 else:
119 continue
120 if flag ==0:
121 print("很抱歉,系统不存在该学生信息!") 123 #2.6 退出系统
124 def exitStd():
125 global label
126 key = raw_input("确认退出系统?(yes or no)")
127 while(1):
128 if key == "yes":
129 print("感谢使用系统,欢迎下次再来!")
130 label = 1
131 break
132 else:
133 print("请重新选择需要办理的业务编号!")
break
134 #3.主程序
135 def main():
136 choice = printStd()
137 while choice<=6:
138 makeChoice(choice)
139 if label ==1:
140 break
141 choice = printStd()
142
143
144 label=0
145 std = []
146 main()
1. 新增学生:

2.查找学生信息:

3.删除学生:

4.遍历可验证学号为12的学生是否已删除:

为空,已删除。正常遍历如下:

5. 修改:


修改成功。
6.退出:

python之学生信息管理系统的更多相关文章
- python 04 学生信息管理系统
今天任务不多,做了学生信息管理系统1.0,使用字典存储学生个体信息,列表存储学生字典.注意dict定义要在循环体内,若定义成全局变量或循环体外,则旧数据会被新数据覆盖.dict属于可变类型数据,内容改 ...
- 1、纯python编写学生信息管理系统
1.效果图 2.python code: class studentSys(object): ''' _init_(self) 被称为类的构造函数或初始化方法, self 代表类的实例,self 在定 ...
- Python基础案例练习:制作学生信息管理系统
一.前言 学生信息管理系统,相信大家或多或少都有做过 最近看很多学生作业都是制作一个学生信息管理系统 于是,今天带大家做一个简单的学生信息管理系统 二.开发环境: 我用到的开发环境 Python 3. ...
- Python学生信息管理系统的开发
# 第一题:设计一个全局变量,来保存很多个学生信息:学生(学号, 姓名,年龄):思考要用怎样的结构来保存:# 第二题:在第一题基础上,完成:让用户输入一个新的学生信息(学号,姓名,年龄):你将其保存在 ...
- 【python免费代码】设计一个简单的学生信息管理系统
文章目录 前言 一.理解 二.部分截图展示 三.代码 四.总结 前言 设计一个简单的学生信息管理系统,实现以下功能(bug) : 录入学生信息,信息以文件方式存储 以学生学号或者学生姓名为条件查询该学 ...
- python3 简陋的学生信息管理系统
# 编写一个“学生信息管理系统”# 输入序号:1. 输入学生信息,学生信息包括:id,name,age,gender(用什么数据类型保存?)# 2. 查询:输入学生姓名和id,显示学生个人信息# 3. ...
- 基于数组或链表的学生信息管理系统(小学期C语言程序实训)
1.基于数组的学生信息管理系统 实验内容: 编写并调试程序,实现学校各专业班级学生信息的管理.定义学生信息的结构体类型,包括:学号.姓名.专业.班级.3门成绩. 实验要求: (1) main函数:以菜 ...
- 基于数据库MySQL的简易学生信息管理系统
通过这几天学习Mysql数据库,对其也有了基本的了解,为了加深印象,于是就写了一个最简易的学生信息管理系统. 一:基本要求 1.通过已知用户名和密码进行登录: 2.可以显示菜单: 3.可以随时插入学生 ...
- C++ 简单的学生信息管理系统
// // main.cpp // 2013-7-17作业1 // // Created by 丁小未 on 13-7-17. // Copyright (c) 2013年 dingxiaowei. ...
随机推荐
- nginx 的基础知识(二)
Nginx 多进程网络模型 进程模型 nginx启动后以daemon的方式在后台运行,后台进程包括一个master进程和多个worker进程 master进程主要作用,接收来自外界的信号:向各work ...
- Linux 查看实时网卡流量的方法 网速 nload sar iftop dstat
1.使用nload yum install -y gcc gcc-c++ ncurses-devel make wgetwget http://www.roland-riegel.de/nload/n ...
- 实用程序包utils - 基于Rollup打包输出各模块文件(二)
上一次,我们讲到了如何去搭建一个前端工具库的工程,那么今天我们来聊一聊如何去将其打包输出. 需求 事情是这个样子的.我有一个这样的需求,或者是我发现有这么一个需求.就是有时候吧,我也不想搞的那么复杂, ...
- SQL Server将同一列多条数据合并成一行
Sql server中,将同一字段多条数据用字符拼接为一个字符串方式. 原数据查询展示: 使用 STUFF 函数,将结果列拼接成一行.结果如下: STUFF: 1.作用 stuff(param1, s ...
- kindeditor富文本框使用方法
这周我一共使用了两个文本框编辑器!我的上一篇文档讲的是wangeditor这个编辑器,现在就来讲讲kindeditor这个编辑器! 首先还是去它的官网去下载脚本! http://kindeditor. ...
- Win7 64 + mysql5.6.24(.zip) 不知道root密码的情况下重设密码
解决方式 第一步:在运行(常常在附件中)里输出cmd,右键以系统管理员身份登陆: 第二步:停止mysql服务,命令为:net stop mysql 注意,若不行将当前目录切换到mysql\bin目录 ...
- Linux基础服务——Bind DNS服务 Part2
Linux基础服务--Bind DNS服务 Part2 DNS反向解析与区域传送 实验环境延续Part1的实验环境. 反向区域配置 正向解析是域名到IP地址的映射,反向解析则是IP地址到域名的解析,在 ...
- 可视化反投射:坍塌尺寸的概率恢复:ICCV9论文解读
可视化反投射:坍塌尺寸的概率恢复:ICCV9论文解读 Visual Deprojection: Probabilistic Recovery of Collapsed Dimensions 论文链接: ...
- 立体显示与BCN双稳态手性向列相
立体显示与BCN双稳态手性向列相 狭缝光栅立体显示 技术介绍: 人的左右眼间距大约是65MM,左右眼透过视差光栅看到不同的视角图像,经大脑融合形成立体视觉. 技术优点: 2D/3D可切换: 低成本: ...
- 在NVIDIA A100 GPU上利用硬件JPEG解码器和NVIDIA nvJPEG库
在NVIDIA A100 GPU上利用硬件JPEG解码器和NVIDIA nvJPEG库 根据调查,普通人产生的1.2万亿张图像可以通过电话或数码相机捕获.这样的图像的存储,尤其是以高分辨率的原始格式, ...