Python 简单的学生管理系统

学生管理系统

'''
学生管理系统

描述学生:数据类型:字典       {"name":name,"age":age,"score",score}
容器选择:列表  [{},{},{}]
'''
#定义一个全局变量class_info 班级信息
class_info=[]

def print_menu():
    print("---------------------------")
    print("学生管理系统")
    print("1.添加学生")
    print("2.删除学生")
    print("3.修改学生")
    print("4.查询学生")
    print("5.显示所有学生")
    print("6.退出系统")
    print("---------------------------")

#添加学生的函数
def add_student():
    #声明使用全局变量
    global class_info
    name=input("please input your name")
    #不想执行,退出到主页面
    if name=="quit":
        return main()

    age = input("please input your age")
    score = input("please input your score")


    #姓名的验证,不能有重复的名字
    for student in class_info:  #class_info =[{},{},{}]
        if student["name"]==name: #说明学生姓名重复
            print("学生已经存在")
            return
    #学生没有被添加过
    student={
        "name":name,
        "age":age,
        "score":score
    }
    #将学生信息插入列表
    class_info.append(student)   #class_info =[{'name':'zhangsan','age':'18','score':'90'}]
    print("插入成功")


#删除学生的函数
def del_student():
    global class_info   #声明使用全局变量

    #根据姓名删除学生
    name=input("输入要删除的学生姓名")
    if name=="quit":
        return main()

    #根据学生的姓名去class_info中寻找
    for student in class_info:
        if student["name"]==name:
            class_info.remove(student)
            print("删除成功")
            return
    #循环外就是学生不存在
    print("学生不存在")
    return None

#修改学生信息的函数
def rev_student():
    global class_info     #声明使用全局变量
    name=input("输入要修改学生的姓名")
    if name=="quit":
        return main()
    for student in class_info:
        if student["name"] == name:
            student["name"]=input("输入修改后学生的名字")
            student["age"] = input("输入修改后学生的年龄")
            student["score"] = input("输入修改后学生的成绩")
            print("修改成功")
            return
    print("学生姓名错误")
    return None

#查询学生信息的函数
def find_student():
    global class_info  # 声明使用全局变量
    name=input("输入你要查询的学生姓名")
    if name=="quit":
        return main()
    for student in class_info:
        if student["name"] == name:
            print("name",student["name"])
            print("age", student["age"])
            print("score", student["score"])
            print("查询成功")
            return
    print("查询失败")
    return None

#显示所有学生的函数
def show_student():
    global class_info  # 声明使用全局变量

    #遍历学生信息
    print("%10s %10s %10s %10s" % ("序号","姓名", "年龄", "成绩"))
    i=1
    for student in class_info:
        print("%10s %12s %12s %12s" % (i,student["name"],student["age"],student["score"]))
        i+=1
    return None


def main():
    while True:
        print_menu()    #打印功能菜单
        choose=int(input("please input your choose"))   #选择功能
        if choose==1:
            add_student()
            print(class_info)
        elif choose==2:
            del_student()
        elif choose==3:
            rev_student()
            print(class_info)
        elif choose==4:
            find_student()
        elif choose==5:
            show_student()
        elif choose==6:
            print("byebye")
            break
        else:
            print("输入有误,请重新输入")
            continue

main()

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

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

余额充值