2018-10-14 Day 11 学生管理系统

要求:

实现系统界面,功能界面,学号由迭代器或者生成器自动添加,实现添加学生、查询学生(按照姓名/学号查询)、修改学生(按照姓名或者学号修改学生的姓名/电话/年龄)、删除学生(按照学号/姓名删除)功能

ey_module模块

"""__author__ = 二扬"""

def sys_interface():
    """
     打印学生管理系统界面
    """
    print(("=" * 56).center(55, " "))
    print("*" + "欢迎来到二扬的学生管理系统".center(42) + "*")
    print("*" + " " *  54 + "*")
    print("*" + "1. 添加学生".center(50) + "*")
    print("*" + "2. 查询学生".center(50) + "*")
    print("*" + "3. 修改学生".center(50) + "*")
    print("*" + "4. 删除学生".center(50) + "*")
    print("*" + "5. 退出系统".center(50) + "*")
    print(("=" * 56).center(55, " "))


def add_function():
    add_name = input("请输入学生姓名: ")
    add_age = int(input("请输入学生年龄: "))
    add_tel = int(input("请输入学生电话: "))
    stu_information = {"name": add_name, "age": add_age, "tel": add_tel}
    return stu_information


list_id = list(range(1, 101))
id_iter = iter(list_id)
def id_function():
    add_id = next(id_iter)
    return add_id


def add_interface():
    print(("=" * 56).center(55, " "))
    print("*" + "1. 继续添加学生".center(49) + "*")
    print("*" + "2. 返回系统界面".center(49) + "*")
    print(("=" * 56).center(55, " "))


def seek_stu():
    print(("=" * 56).center(55, " "))
    print("*" + "1. 通过姓名查询".center(49) + "*")
    print("*" + "2. 通过学号查询".center(49) + "*")
    print("*" + "3. 查询所有学生".center(49) + "*")
    print("*" + "4. 返回系统界面".center(49) + "*")
    print(("=" * 56).center(55, " "))


def change_stu():
    print(("=" * 56).center(55, " "))
    print("*" + "1. 修改学生姓名".center(49) + "*")
    print("*" + "2. 修改学生年龄".center(49) + "*")
    print("*" + "3. 修改学生电话".center(49) + "*")
    print("*" + "4. 返回学生界面".center(49) + "*")
    print(("=" * 56).center(55, " "))


def delete_stu():
    print(("=" * 56).center(55, " "))
    print("*" + "1. 通过姓名删除".center(49) + "*")
    print("*" + "2. 通过学号删除".center(49) + "*")
    print("*" + "3. 返回系统界面".center(49) + "*")
    print(("=" * 56).center(55, " "))



学生管理系统

"""__author__ = 二扬"""

import ey_module

stu_list = []
key = 1
while key:
    ey_module.sys_interface()
    select = int(input("请输入您的选择: "))
    while True:
        if select == 1:     # 增加学生功能
            single_information = ey_module.add_function()
            stu_id = str(ey_module.id_function()).rjust(4, "0")
            single_information["id"] = ("python1807" + stu_id)
            stu_list.append(single_information)
            print("增加成功")
            print(stu_list)
            ey_module.add_interface()
            value = int(input("请选择: "))
            if value == 1:
                pass
            else:
                break

        elif select == 2:       # 查找学生功能
            ey_module.seek_stu()
            select_num = int(input("请选择: "))
            if select_num == 1:     # 姓名查找
                stu_name = input("请输入学生的姓名: ")
                seek_list = []
                for name_stu in stu_list:
                    if name_stu["name"] == stu_name:
                        seek_list.append(name_stu)
                if seek_list:
                    print(seek_list)
                else:
                    print("没有此学生,返回系统界面")


            elif select_num == 2:       # 学号查找
                seek_id = input("请输入学生学号: ")
                for id_seek in stu_list:
                    if id_seek["id"] == seek_id:
                        print(id_seek, "查询完毕,返回选择界面", sep="\n")
                        break
                else:
                    print("没有此学生,返回选择界面")
            elif select_num == 3:       # 查找全部学生
                print(stu_list, "查询完毕,返回选择界面", sep="\n")
            else:
                break

        elif select == 3:       # 修改学生功能
            ey_module.change_stu()
            select_num2 = int(input("请选择: "))
            if select_num2 == 1:        # 修改姓名
                name_change = input("输入被修改的学生姓名: ")
                change_name = input("输入被修改后的学生姓名: ")
                change_list = []
                dict_student = {}
                for change_stu in stu_list:
                    if change_stu["name"] == name_change:
                        dict_student = change_stu
                        change_list.append(change_stu)
                if len(change_list) == 1:
                    dict_student["name"] = change_name
                    print("修改成功,返回选择界面")
                    print(change_list)

                elif len(change_list[:]) > 1:
                    print(change_list)
                    change_name_num = int(input("请问你要修改列表中第几个人的信息:"))
                    change_id = change_list[(change_name_num - 1)]["id"]
                    for id_ in stu_list:
                        if id_["id"] == change_id:
                            id_["name"] = change_name
                            print("修改成功, 返回选择界面")
                            print(id_)
                            break
                else:
                    print("没有此学生,返回选择界面")

            elif select_num2 == 2:      # 修改年龄
                name_change2 = input("请输入学生的姓名: ")
                change_age = int(input("输入被修改后的学生年龄: "))
                for change_stu2 in stu_list:
                    if change_stu2["name"] == name_change2:
                        change_stu2["age"] = change_age
                        print("修改成功,返回选择界面")
                        break
                else:
                    print("没有此学生,返回选择界面")
            elif select_num2 == 3:      # 修改电话
                name_change3 = input("请输入学生的姓名: ")
                change_tel = int(input("输入被修改后的学生电话: "))
                for change_stu3 in stu_list:
                    if change_stu3["name"] == name_change3:
                        change_stu3["tel"] = change_tel
                        print("修改成功,返回选择界面")
                        break
                else:
                    print("没有此学生,返回选择界面")
            else:
                break


        elif select == 4:       # 删除学生功能
            ey_module.delete_stu()
            select_num3 = int(input("请选择: "))
            if select_num3 == 1:        # 通过姓名删除
                delete_name = input("请输入被删除学生的姓名: ")
                name_list = []
                for name_delete in stu_list[:]:
                    if name_delete["name"] == delete_name:
                        name_list.append(name_delete)
                if name_list:
                    print(name_list)
                    del_name = int(input("请输入你要删除列表中的第几个学生的信息: "))
                    stu_list.remove(name_list[(del_name - 1)])
                    print("删除成功,返回选择界面")
                else:
                    print("没有此学生,返回选择界面")

            elif select_num3 == 2:      # 通过学号删除
                delete_num = input("请输入被删除学生的学号: ")
                for num_delete in stu_list[:]:
                    if num_delete["id"] == delete_num:
                        stu_list.remove(num_delete)
                        print("删除成功, 返回选择界面")
                        break
                else:
                    print("没有此学生,返回选择界面")
            else:
                break

        else:
            print("谢谢使用学生管理系统")
            key -= 1
            break
















最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
  • 序言:七十年代末,一起剥皮案震惊了整个滨河市,随后出现的几起案子,更是在滨河造成了极大的恐慌,老刑警刘岩,带你破解...
    沈念sama阅读 204,293评论 6 478
  • 序言:滨河连续发生了三起死亡事件,死亡现场离奇诡异,居然都是意外死亡,警方通过查阅死者的电脑和手机,发现死者居然都...
    沈念sama阅读 85,604评论 2 381
  • 文/潘晓璐 我一进店门,熙熙楼的掌柜王于贵愁眉苦脸地迎上来,“玉大人,你说我怎么就摊上这事。” “怎么了?”我有些...
    开封第一讲书人阅读 150,958评论 0 337
  • 文/不坏的土叔 我叫张陵,是天一观的道长。 经常有香客问我,道长,这世上最难降的妖魔是什么? 我笑而不...
    开封第一讲书人阅读 54,729评论 1 277
  • 正文 为了忘掉前任,我火速办了婚礼,结果婚礼上,老公的妹妹穿的比我还像新娘。我一直安慰自己,他们只是感情好,可当我...
    茶点故事阅读 63,719评论 5 366
  • 文/花漫 我一把揭开白布。 她就那样静静地躺着,像睡着了一般。 火红的嫁衣衬着肌肤如雪。 梳的纹丝不乱的头发上,一...
    开封第一讲书人阅读 48,630评论 1 281
  • 那天,我揣着相机与录音,去河边找鬼。 笑死,一个胖子当着我的面吹牛,可吹牛的内容都是我干的。 我是一名探鬼主播,决...
    沈念sama阅读 38,000评论 3 397
  • 文/苍兰香墨 我猛地睁开眼,长吁一口气:“原来是场噩梦啊……” “哼!你这毒妇竟也来了?” 一声冷哼从身侧响起,我...
    开封第一讲书人阅读 36,665评论 0 258
  • 序言:老挝万荣一对情侣失踪,失踪者是张志新(化名)和其女友刘颖,没想到半个月后,有当地人在树林里发现了一具尸体,经...
    沈念sama阅读 40,909评论 1 299
  • 正文 独居荒郊野岭守林人离奇死亡,尸身上长有42处带血的脓包…… 初始之章·张勋 以下内容为张勋视角 年9月15日...
    茶点故事阅读 35,646评论 2 321
  • 正文 我和宋清朗相恋三年,在试婚纱的时候发现自己被绿了。 大学时的朋友给我发了我未婚夫和他白月光在一起吃饭的照片。...
    茶点故事阅读 37,726评论 1 330
  • 序言:一个原本活蹦乱跳的男人离奇死亡,死状恐怖,灵堂内的尸体忽然破棺而出,到底是诈尸还是另有隐情,我是刑警宁泽,带...
    沈念sama阅读 33,400评论 4 321
  • 正文 年R本政府宣布,位于F岛的核电站,受9级特大地震影响,放射性物质发生泄漏。R本人自食恶果不足惜,却给世界环境...
    茶点故事阅读 38,986评论 3 307
  • 文/蒙蒙 一、第九天 我趴在偏房一处隐蔽的房顶上张望。 院中可真热闹,春花似锦、人声如沸。这庄子的主人今日做“春日...
    开封第一讲书人阅读 29,959评论 0 19
  • 文/苍兰香墨 我抬头看了看天上的太阳。三九已至,却和暖如春,着一层夹袄步出监牢的瞬间,已是汗流浃背。 一阵脚步声响...
    开封第一讲书人阅读 31,197评论 1 260
  • 我被黑心中介骗来泰国打工, 没想到刚下飞机就差点儿被人妖公主榨干…… 1. 我叫王不留,地道东北人。 一个月前我还...
    沈念sama阅读 44,996评论 2 349
  • 正文 我出身青楼,却偏偏与公主长得像,于是被迫代替她去往敌国和亲。 传闻我的和亲对象是个残疾皇子,可洞房花烛夜当晚...
    茶点故事阅读 42,481评论 2 342

推荐阅读更多精彩内容

  • 用两张图告诉你,为什么你的 App 会卡顿? - Android - 掘金 Cover 有什么料? 从这篇文章中你...
    hw1212阅读 12,691评论 2 59
  • <白色球鞋 认了吧 >陈奕迅 荷尔蒙-我想是-多巴胺-分泌之后我现在很满足。有些话从别人嘴巴里面硬生生的扣出来。会...
    tonytony桑阅读 247评论 0 1
  • 从深回来已有一年有余,按照自己的计划,考了驾照,报了培训班学android。确没有从事android开发的工作。...
    69ca6bf82baf阅读 248评论 0 0
  • 何苦万千年修炼 只是那转身楚楚 痴情酌酒苦苦等 黄了画纸 风也石化 情缘太早散 凡心念念惟谁动 千尺泪也漫金山
    阳光小城阅读 92评论 0 1
  • 一、你今天最感恩的三件事是什么? 1、今天月末盘点,加上昨天又休息了一天,更导致工作量加大,心里非常地紧张,我就对...
    杨培雯阅读 228评论 0 0