python的学生管理系统

代码如下:

import os
# 封装一个menu()函数,专门用于实现打印学生管理系统的菜单
def menu():
    os.system('cls')  # 用于清理屏幕
    print('-' * 40)
    print('欢迎使用传智教育学生管理系统V1.0')
    print('【1】添加学员信息')
    print('【2】删除学员信息')
    print('【3】修改学员信息')
    print('【4】查询学员信息')
    print('【5】遍历所有学员信息')
    print('【6】保存数据到文件')
    print('【7】退出系统')
    print('-' * 40)
students=[]

#1、添加学员信息
def add_student():
    student={}
    student['name']=input("请输入学员的名字:")
    student['id']=input("请输入学员的学号:")
    student['age']=input("请输入学员的年龄:")
    student['grade']=input("请输入学员的成绩:")
    students.append(student)
    print("添加学员信息成功")

#2、删除学员的信息
def delete_student():
    name1=input("请输入要删除的学员的名字:")
    for i in students:
        if i['name']==name1:
            students.remove(i)
            print("删除学员信息成功")
            break
    else:
        print("没有您要删除的学员")

#3、修改学员信息
def change_student():
    name1=input("请输入要修改信息的学员名字::")
    for i in students:
        if i['name']==name1:
            modified_information=input("要修改什么信息:")
            for key in i:
                if key==modified_information:
                    print(f'您要修改{key}为:',end=' ')
                    i[key]=input()
                    print("修改学员信息成功")
            break
    else:
        print("您要修改的信息不存在,修改失败")

#4、查询学员的信息
def find_student():
    name1=input("请输入要查找的学员名字:")
    for i in students:
        if i['name']==name1:
            print(i)
            break
    else:
        print(f'没有名字为{name1}这个人的信息,查询失败')

#5、遍历所有学员信息
def traversal_student():
    # 提前判断,如果没有学员打印下则返回
    if not students:
        print("抱歉,没有一个学员,请添加学员")
        return
    print("所有学员信息如下:")
    for i in students:
        print(i)

#6、保存数据到文件
def save_the_data_to_be_file():
    f=open('students.txt','w',encoding='utf-8')
    f.write(str(students))  #将列表转为字符串才可以存入文件中
    f.close()
    print("文件已保存到student.txt文件中")

#打开student.txt文件
def open_file():
    try:
        f=open("students.txt",'r',encoding='utf-8')
    except:
        f=open('students.txt','w',encoding='utf-8')
        f.write()
    else:
        information = f.read()
        if not information:
            return
        else:
            global students
            students = eval(information)  # 将字符串转成列表才符合本程序
open_file()

while True:
    menu()
    select1=int(input("请输入要执行的功能:"))
    if select1==1:
        add_student()
    elif select1==2:
        delete_student()
    elif select1==3:
        change_student()
    elif select1==4:
        find_student()
    elif select1==5:
        traversal_student()
    elif select1==6:
        save_the_data_to_be_file()
    elif select1==7:
        print("退出系统,欢迎下次使用")
        break
    else:
        print("输入错误,请按功能表选择正确的功能!")
    os.system("pause")
  • 1
    点赞
  • 0
    收藏
    觉得还不错? 一键收藏
  • 打赏
    打赏
  • 0
    评论

“相关推荐”对你有帮助么?

  • 非常没帮助
  • 没帮助
  • 一般
  • 有帮助
  • 非常有帮助
提交
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包

打赏作者

前行人

你的鼓励将是我创作的最大动力

¥1 ¥2 ¥4 ¥6 ¥10 ¥20
扫码支付:¥1
获取中
扫码支付

您的余额不足,请更换扫码支付或充值

打赏作者

实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值