day12学生管理系统

stus_information = []
# 学生信息
nextstu_id = 1
 # 下一个学生的学号
def add_stu():
     """ :return: 添加的学生的信息
     """
     global nextstu_id
     global stus_information
     name = input("请输入姓名:")
     age = input("请输入年龄:")
     phone = input("请输入电话:")
     password = input("请输入登陆密码")
     if password == "":



        if name == "":
            print("增加失败")
            return
            # 名字为空则增加失败
            str_id = "python1807" + str(nextstu_id).rjust(3, "0")
            dict1 = {"name": name, "age": age, "phone": phone, \
                     "student_id": str_id, "password": password}
            print(dict1)
            print("学号为:" + str_id)
            nextstu_id += 1
            stus_information.append(dict1)
            print("增加成功")
            return dict1
def find_stu(student_name: str):
     """
     :param student_name: 名字
     :return: 查找的学生
     """
     global stus_information
     for n in stus_information:
         num = 0
         list2 = []
         if n["name"] == student_name:
             list2.append(n)
             # 得到查找的学生
             print(num, n)
             num += 1
     if num == 0:
         print("没有该学生")
     return list2
def del_stu(student: dict):
     """
     :param student:要删除的学生

     """
     global stus_information
     #在本系统中输入的一定是存在的学生,

     stus_information.remove(student)
     print("删除成功")
def change_stu(student: dict):
     """
     :param student: 要修改的学生

     """
     global stus_information
     key1 = input("请输入要修改的信息")
     if key1 not in student.keys():
         print("输入信息有误,修改失败!!!")
         # elif key1 == "student_id":
         #  print("不能修改学号!!!")
         #  elif key1 == "name":
         #  value1 = input("请输入修改后的值")
     else:
         value1 = input("请输入修改后的值")
         for s in stus_information:
             if s == student:
                 s[key1] = value1
                 print(s)
                 print("修改成功")
def print_operation(s: str):
     """
     :param s:操作及其编号

     """
     num = num_interface - 5 - (len(s) - 1) + 10
     print("║" + " " * 5 + s.ljust(num) + " ║")

num_interface = 20
# 界面长度
start_interface = "╔" + "欢迎来到学生管理系统".center(num_interface, "-") + "╗"
end_interface = "╚" + "请输入执行的操作编号".center(num_interface, "-") + "╝"
# 登陆界面
def land_interface():
    """
    :return: 操作编号

     """
    print(start_interface)
    print_operation("1.学生登陆")

    print_operation("2.管理员登陆")

    print_operation("3.注册")
    # 加入一个新学生
    print_operation("4.退出系统")
    print(end_interface)
    operation_num = input()
    return operation_num
    # 返回界面
def bank_interface():
    print(start_interface)
    print_operation("1.再次操作")
    print_operation("2.返回上一层")
    print(end_interface)
    return int(input())
    # 修改界面
def chang_intetface():
    print(start_interface)
    print_operation("1.修改信息")
    print_operation("2.返回上一层")
    print(end_interface)
    return input()
    # 管理员界面
def manage_interface():
    print(start_interface)
    print_operation("1.增加学生")
    print_operation("2.查找学生")
    print_operation("3.删除学生")
    print_operation("4.显示所有学生")
    print_operation("5.修改学生信息")
    print_operation("6.返回上一层")
    print(end_interface)
    return input()
    # 学生管理系统
while 1:
    operation_num = land_interface()
    # 登陆界面
    while 1: # 学生登陆
        if operation_num == "1":
            my_id = input("请输入学号:")
            my_password = input("请输入密码:")
            for s in stus_information:
                if s["student_id"] == my_id and s["password"] == my_password:
                   print(s)
                   break
                   # 密码错误时
            else: print("密码或学号错误!!!")
            operation_num1 = bank_interface()
            if operation_num1 != "1":
                # 除1以外任意输入返回上一层
                break

            else:
                 continue
        # 密码正确时
        operation_num1 = chang_intetface()
        # 修改学生信息
        if operation_num1 == "1":
            while 1:
        # 循环可以多次修改信息
             change_stu(s)
             operation_num11 = bank_interface()
             if operation_num11 != "1":
                 break
        break # 回到主界面
        
    #脑仁疼,不会写
最后编辑于 :
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

相关阅读更多精彩内容

友情链接更多精彩内容