python的一个综合例子

案例——宿舍管理系统。

主要涉及列表、字典的初始化、增加、删除、修改和查询操作,以及函数的定义和调用。

参考代码:

student_info = []

def Show():
    #学生宿舍管理系统V1.0
    #1打印功能提示
    print('='*50)
    print("学生宿舍管理系统V1.0")
    print("1:添加一个新的入住学生信息")
    print("2:删除一个学生的住宿信息")
    print("3:修改一个学生的住宿信息")
    print("4:查询一个学生的住宿信息")
    print("5:显示所有的学生的住宿信息")
    print("6:显示所有请假学生的信息")
    print("7:退出系统")
    print('='*50)
    


def Add_info():
    new_info = {}
    new_info["student_name"] = input("请输入新入住的学生名字:")
    new_info["D_num"] = input("请输入宿舍号+床位(如313-3"))
    new_info["Class_num"] = input("请输入班级:")
    new_info["status"] = input("请输入入住情况(在校or请假):")
    student_info.append(new_info)

def Delete_info():
    del_name = input("请输入要删除的退宿学生名字:")
    find_flag = False
    for line in student_info:
        if line["student_name"] == del_name:
            find_flag = True
            student_info.remove(line)
            break
    if find_flag:
        print("已删除")
    else:
        print("系统不存在该学生的信息!")

def Update_one_info():
    old_name = input("请输入要修改的学生姓名:")
    flag = 0
    for line in student_info:
        if line["student_name"]==old_name:
            line["student_name"]=input("请输入需要修改的学生名字:")
            line["D_num"]=input("请输需要修改的宿舍号+床位号(如313-3)")
            line["Class_num"]=input("请输入需要修改的班级:")
            line["status"] = input("请输入需要修改的入住情况(在校or请假)")
            flag = True
            break
    if flag:
        print("已修改")
    else:
        print("系统不存在该学生的信息!")

def  Find_one_info():
    find_name = input("请输入要查找的学生姓名:")
    find_flag = 0
    for temp in student_infors:
        if find_name == temp["student_name"]:
            print("学生名字\t宿舍号+床位号\t班级\t\t入住情况")
            print("%s\t\t%s\t\t%s\t\t%s")%(temp["student_name"],temp["D_num"],temp["Class_num"],temp["status"])
            find_flag = 1
            break
    if find_flag == 0:
        print("系统不存在该学生的信息")
            
def Find_all_info():
    print("学生名字\t宿舍号+床位号\t班级\t\t入住情况")
    for temp in student_info:
        print("%s\t\t%s\t\t%s\t\t%s"%(temp["student_name"],temp["D_num"],temp["Class_num"],temp['status']))

def Find_leave():
    leave_flag = 0
    print("学生名字\t宿舍号+床位号\t班级\t\t入住情况")
    for temp in student_info:
        if temp["status"]=="请假":
            print("%s\t\t%s\t\t%s\t\t%s"%(temp['student_name'],temp['D_num'],temp['Class_num'],temp['status']))
            leave_flag = 1

    if leave_flag == 0 :
        print("系统不存在请假学生")

def main():
    Show()
    while True:
        num = input("请输入操作序号:")
        if  num.isdigit():
            num = int(num)
            if num == 1:
                print("1:添加一个新的入住学生信息")
                Add_info()
            elif num == 2:
                print("2:删除一个学生的住宿信息")
                Delete_info()
            elif num == 3:
                print("3.修改一个学生住宿信息")
                Update_one_info()
            elif num==4:
                print("4:查询一个学生住宿信息")
                Find_one_info()
            elif num==5:
                print("5:显示所有的学生住宿信息")
                print()
                Find_all_info()
            elif num==6:
                print("6:显示所有请假学生信息")
                Find_leave()
            elif num==7:
                print("已退出系统!")
                break
            else:
                print("输入有误!目前只有1-7项功能哦")
                continue
            print("")
        else:
            print("输入错误,请重新输入!1-7")
                

if __name__=="__main__":
    main()
        

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值