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. ...
随机推荐
- Navigation activity回退到fragment失败
我有一个activity--MainActivity, 布局中设置了一个 <androidx.fragment.app.FragmentContainerView android:layout_ ...
- VMware vCenter Server 7.0 U2b/6.7 U3n/6.5 U3p,修复 vSphere Client 高危安全漏洞
vSphere Client(HTML5)中的多个漏洞已秘密报告给 VMware.这里提供了更新和解决方法来解决受影响的 VMware 产品中的这些漏洞. 详见:VMSA-2021-0010 威胁描述 ...
- IDEA 最实用快捷键【MAC版本】
目录 option + F7 Ctrl + B / Ctrl +鼠标左键(一键两用,可以无限循环的跳过来跳过去,我跳过去了,我又跳回去了) command + E (这个快捷键很有用,为什么我老是用不 ...
- 五种开源API网关实现组件对比
五种开源API网关实现组件对比 API 网关一些实现 使用一个组件时,尤其是这种比较流行的架构,组件肯定存在开源的,我们不必自己去从零开始去实现一个网关,自己开发一个网关的工作量是相当可观的, ...
- django2中namespace和name的使用
django2中namespace和name的使用 一.在Django <= 1.11 我们通过关键词namespace参数定义名称空间 1.projects/urls.py from ...
- 摄像头与毫米波雷达(Radar)融合
摄像头与毫米波雷达(Radar)融合 Input: (1)图像视频分辨率(整型int) (2)图像视频格式 (RGB,YUV,MP4等) (3)毫米波雷达点云信息(点云坐标位置x,y,浮点型float ...
- PyTorch 进行 Neural-Transfer
PyTorch 进行 Neural-Transfer 1.简介 本文讲解如何实现由 Leon A. Gatys,Alexander S. Ecker和Matthias Bethge提出的Neural- ...
- Android系统编程入门系列之应用环境及开发环境介绍
作为移动端操作系统,目前最新的Android 11.0已经发展的比较完善了,现在也到了系统的整理一番的时间,接下来的系列文章将以Android开发者为中心,争取用归纳总结的态度对初级入门者所应 ...
- Redis 面试题 - 收藏版 (持续更新、吐血推荐)
文章很长,建议收藏起来,慢慢读! 疯狂创客圈为小伙伴奉上以下珍贵的学习资源: 疯狂创客圈 经典图书 : <Netty Zookeeper Redis 高并发实战> 面试必备 + 大厂必备 ...
- ubuntu初识
简单的Linux系统理解 Ubuntu ctrl+alt 可以令虚拟机释放鼠标,回到主系统中. 如果ubuntu有问题,如何重装? -------直接删除目录.虚拟机内的操作不会影响到宿主机. 1.挂 ...