使用Python实现 学生学籍管理系统
作者:黒泽沦 发布时间:2023-08-21 18:42:47
标签:python,管理系统
大家好,今天跟大家分享一个用Python实现的学生学籍管理系统:
该代码主体由五个函数组成:
1.add_stu() 添加
2.del_stu() 删除
3.print_stu()打印
4.exit_stu() 退出
5.system() 主函数
1.add_stu()
此段函数作用:把输入的值存入字典newstu中,并将字典存入列表stu中
def add_stu():
newstu = {
'num':int(input("请输入学号:"'')),
'name':input("请输入姓名:"''),
'sex':input("请输入性别:"'')
}
stu.append(newstu) #stu是定义的列表,可在下面的完整代码中查找
return system()
2.del_stu()
此段函数作用:根据输入学号,查找列表中的字典键值是否存入,若存入,将该字典从列表中删除
def del_stu():
delstus = int(input("请输入要删除的学生学号:"))
k = 0 #循环递增变量,用来判断要删除的字典在列表中的位置
for temp in stu:
k+=1
if delstus in range(temp['num'],temp['num']-1,-1):
#这里的temp变量相当于列表中的字典,通过查找键值是否相匹配,并用到range函数(start,stop,step)
print("该学号已找到")
break
del stu[( k - 1 )]#删除列表中的字典
print("删除成功")
return system()
3.print_stu()
此段函数作用:把列表中的字典以值的形式遍历出来
def print_stu():
i = 1
j = 0
k = 1
print("=================================")
print("学生信息如下:")
print("=================================")
print("序号\t学号\t姓名\t性别")
for s in stu:#遍历列表
for cla in s.values(): #字典中的按值索引
if j%3 == 0:#第一个if用来实现:序号递增并换行
print("\n")
print(k,end = '.\t')
k+=1
print(cla,end = '\t')
if i%3 == 0:#第二个if用来实现:每输出一个字典就换行
print("\n")
i+=1
j+=1
print("\n")
return system()
4.exit_stu()
此段函数作用:人机交互,退出
def exit_stu():
x = input("是否退出?( YES or NO ) : ")
if x == 'YES':
print("***Repl Closed*** ")
else:
return system()
5.system_stu()
主函数
def system():
print("=================================")
print("学生管理系统v1.0")
print("1.添加学生信息")
print("2.删除学生信息")
print("3.显示所有的学生信息")
print("0.退出系统")
print("=================================")
x = int(input("请输入功能对应的数字: "))
if( x == 1):
add_stu()
elif( x == 2):
del_stu()
elif( x == 3):
print_stu()
elif( x == 0):
exit_stu()
else:
return system()
完整代码
stu = []
def add_stu():
newstu = {
'num':int(input("请输入学号:"'')),
'name':input("请输入姓名:"''),
'sex':input("请输入性别:"'')
}
stu.append(newstu)
return system()
def del_stu():
delstus = int(input("请输入要删除的学生学号:"))
k = 0
for temp in stu:
k+=1
if delstus in range(temp['num'],temp['num']-1,-1):
print("该学号已找到")
break
del stu[( k - 1 )]
print("删除成功")
return system()
def print_stu():
i = 1
j = 0
k = 1
print("=================================")
print("学生信息如下:")
print("=================================")
print("序号\t学号\t姓名\t性别")
for s in stu:
for cla in s.values():
if j%3 == 0:
print("\n")
print(k,end = '.\t')
k+=1
print(cla,end = '\t')
if i%3 == 0:
print("\n")
i+=1
j+=1
print("\n")
return system()
def exit_stu():
x = input("是否退出?( YES or NO ) : ")
if x == 'YES':
print("***Repl Closed*** ")
else:
return system()
def system():
print("=================================")
print("学生管理系统v1.0")
print("1.添加学生信息")
print("2.删除学生信息")
print("3.显示所有的学生信息")
print("0.退出系统")
print("=================================")
x = int(input("请输入功能对应的数字: "))
if( x == 1):
add_stu()
elif( x == 2):
del_stu()
elif( x == 3):
print_stu()
elif( x == 0):
exit_stu()
else:
return system()
system()
难点
1.在列表中,按学号索引字典
2. 打印列表时的换行和序号
总结
以上所述是小编给大家介绍的使用Python实现 学生学籍管理系统网站的支持!
如果你觉得本文对你有帮助,欢迎转载,烦请注明出处,谢谢!
来源:https://blog.csdn.net/qq_45330008/article/details/103223018
0
投稿
猜你喜欢
- 之前有看过一个博文写的是白社会的设计很好但运营却有些遭,因为对每一个WebGame的推出时间把握不准,会有几个应用同时上线造成影响力的冲突,
- 继续Mootools常用方法扩展,依然还是String类的扩展。方法:unescapseHTML说明:这个上次忘了,和escapseHTML
- python的注释方式和C语言、C++、java有所不同python语言中,使用‘#' 来进行注释,其次还有使用 三个引号来进行注释
- 在编写一些小程序时,我需要比较两个字符串是否相同。一开始的思路是使用ord()函数获取字符的整数表示,但是调试过后发现,ord()函数传入的
- asp时间加减运算 和转换问题 a=2007-07-24 2:23:15 b=2005-06-25 2:23:15 问题1 如何将a转换成2
- 哪行哪业都少不了基本功,都说“马步”要扎得稳。在都快说烂了的以目标用户为中心设计的今天,还是要勤练基本功的。不多说了,先了解下“设计的3个C
- 首先声明:本人虽然在web前端岗位干了好多年,但无奈岗位对技术要求不高。html,css用的比较多,JavaScript自己原创的很少,基本
- lambda表达式python中形如:lambda parameters: expression称为lambda表达式,用于创建匿名函数,该
- 概述从今天开始, 小白我将带领大家一起来补充一下 数据库的知识.自连接自连接 (Self Join) 是一种特殊的表连接. 自连接指相互连接
- 返回页面的类容,weburl为页面urlFunction GetBytes(weburl) '创建
- 我想大家都有一些开了80端口的肉 * ,如果是国内的出于安全就不要往下看了,如果不不妨往下看一下,小弟献丑了,以求抛砖引玉。在肉鸡上放网站最麻
- asp中fso怎样判断一个盘上是否有文件,实例代码,需要的朋友可以试试:<% dim objfolder dim
- 前言首先线程和线程池不管在哪个语言里面,理论都是通用的。对于开发来说,解决高并发问题离不开对多个线程处理。我们先从线程到线程池,从每个线程的
- 一、说在前面 需求:有一张长为960,宽为96的图片,需要将其分割成10张96*96的图
- 如果想读取用 open() 函数打开的文件中的内容,除了可以使用 read() 函数,还可以使用 readline() 和 readline
- 备份还原数据库备份数据库企业管理器--或用SQL语句(完全备份):backup database 数据库 to
- 包的引入:import numpy as npimport pandas as pd1. Series 对象的创建1.1 创建一个空的 Se
- AJAX:Asynchronous JavaScript And XML--------异步JavaScript和XML
- 本文实例讲述了php广告加载类的用法,非常实用。分享给大家供大家参考。具体方法如下:该php广告加载类,支持异步与同步加载。需要使用Jque
- 采集开始第一步是分析要采集的页面。使用浏览器打开要采集的页面(如:http://sports.sina.com.cn/k/2008-09-1