各位大佬好 ,这里是阿川的博客 , 祝您变得更强 个人主页:在线OJ的阿川
大佬的支持和鼓励,将是我成长路上最大的动力
阿川水平有限,如有错误,欢迎大佬指正
学生管理系统是计算机专业最基础的一个作业,能考验对基础知识的掌握.应该具有的功能有:1.新增学生2.显示学生3.查找学生4.删除学生.
储存在内存的数据容易丢失,当程序在运行时数据就会发生丢失,所以放到文件里面或者数据库里面会有效解决此问题.
接下来是具体的代码( 如有需要请自取,可改):
import sys
import os
list = []
# 存档
def save():with open("save.txt", "w", encoding="utf=8") as f: # 防止文件泄漏,加withfor s in list:f.write(f"{s['name']}\t{s['studentid']}\t{s["gender"]}\t{s["year"]}")print(f"共{len(list)}条信息")
# 读档
def load():if not os.path.exists("save.txt"):returnglobal listlist = []with open("save.txt", "r", encoding='utf8') as f: # "save.txt表示相对路径,若没有这个文件,系统会自动生成文件"for s in f:line = s.strip()split = line.split("\t")information = {"name": split[0],"studentid": split[1],"gender": split[2],"year": split[3],}list.append(information)print(f"共有{len(list)}条信息")
def main():print("------------------------------------")print("| 欢迎登入学生管理系统 |")print("------------------------------------")
def mune():print("------------------------------------")print("1.增加")print("2.删除")print("3.展示")print("4.查找")print("5.退出")inputs = input("请输入你要选择的数字:")return inputs
def add():name = input("请输入名字:")studentid = input("请输入学号:")gender = input("请输入性别:")year = input("请输入年龄:")if gender not in("男","女"):print("输入错误,请重新输入")returnstudent = {"name": name,"studentid": studentid,"gender": gender,"year": year,}list.append(student)save()print("输入成功!")
def erase():studentid = input("请输入你要删除的学生学号:")for s in list:if studentid == s["studentid"]:print(f"要删除的学生信息为:{s['name']}\t{s['studentid']}\t{s["gender"]}\t{s["year"]}")list.remove(s)save()print("删除成功!")returnprint("没有这个学生!")
def show():for s in list:print(f"{s['name']}\t{s['studentid']}\t{s["gender"]}\t{s["year"]}")print(f"数据共有{len(list)}条")
def find():name = input("请输入你要查找的学生名字:")for s in list:if name == s["name"]:print(f"{s['name']}\t{s['studentid']}\t{s["gender"]}\t{s["year"]}")returnprint("抱歉,没有这个学生")main()
load()
while True:digits = mune()if digits == "1":add()elif digits == "2":erase()elif digits == "3":show()elif digits == "4":find()elif digits == "5":print("再见,祝你生活愉快!")sys.exit(0)else:print("你的输入性别有误,请重新输入")continue
分享自己常用的一本书,这本书相当于Python界的菜谱,很经典的一本书叫做Python cookbook(若要电子版,请关注并私信我)。
再分享两个自己常用的 Python学习网站:
1.整理了Python的一些非常有意思的程序库
2.使用简短的Python代码实现有意思的程序
祝我们变得更强
道阻且长 行则将至 |
---|
个人主页:在线OJ的阿川大佬的支持和鼓励,将是我成长路上最大的动力 |