python 三级菜单 - 增删改查

#!/usr/bin/env python3

menu = {
    "中国计量大学":{
        "机电学院":{
            "机械设计":"张三",
            "自动化":"李四",
            "测控":"王五"
        },
        "理学院":{
            "物理":"A",
            "数学":"B",
            "化学":"C"
        },
        "法学院":{
            "民法":"linda",
            "刑法":"tom",
            "宪法":"jack"
        }
    },
    "浙江理工大学":{
        "机电学院":{
            "机械设计":"1400201401",
            "自动化":"1400201402",
            "测控":"1400201403"
        },
        "理学院":{
            "物理":"1400201404",
            "数学":"1400201405",
            "化学":"1400201406"
        },
        "法学院":{
            "民法":"1400201407",
            "刑法":"1400201408",
            "宪法":"1400201409"
        }
    },
    "浙江工业大学":{
        "机电学院":{
            "机械设计":"1400201801",
            "自动化":"1400201802",
            "测控":"1400201803"
        },
        "理学院":{
            "物理":"1400201804",
            "数学":"1400201805",
            "化学":"1400201806"
        },
        "法学院":{
            "民法":"1400201807",
            "刑法":"1400201808",
            "宪法":"1400201809"
        }
    }
}



def menu_query(menu):

    quit_flag = False #退出循环标志符

    while not quit_flag:

        # 打印
        if isinstance(menu, dict): #最后一级不是字典了,是专业编号,是字符串,不循环打印
            print('欢迎使用学校查询系统'.center(50,'*'))
            for school in menu:
                print('>>>',school)
            print('输入你要查询的学校、学院、专业或新增[add]、修改[revise]、删除[delete]、返回[b]、退出[q]')

            school = input('输入:')

            # 查询
            if school in menu:
                menu_query(menu[school])


            #增加
            elif school == 'add':
                while not quit_flag:
                    school_add = input('输入要添加的学校、学院、专业:')

                    if school_add == 'b':
                        break
                    if school_add not in menu:
                        menu[school_add] = {}
                    else:
                        print('你输入的已经存在')
                # continue
            #删除
            elif school == 'delete':
                school_delete = input('输入要删除的学校、学院、专业:')
                if school_delete in menu:
                    del menu[school_delete]
                else:
                    print('你输入的找不到')
                # continue
            #修改
            elif school == 'update':
                school_update = input('输入要修改的学校、学院、专业:')
                if school_update in menu:
                    new_school = input('输入你要改变的值')
                    menu[new_school] = menu[school_update]
                    del menu[school_update]
                else:
                    print('你要修改的找不到')
                # continue


            elif school == 'b':   #返回上一层
                print('back')
                break

            elif school == 'q':   #退出所有循环
                print('quit')
                quit_flag = True

            else:
                print('重新输入')
        else:
            print(menu)
            break



menu_query(menu)

  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
好的,您想了解关于Python图书管理系统的增删改查功能。 首先,对于Python图书管理系统的增删改查功能,需要先搭建好数据库并连接到Python程序中。可以使用Python中的MySQLdb库或pymysql库进行操作。 接下来,我们来看看具体的实现方法: 1. 增加图书信息:可以通过Python程序输入图书信息,然后插入到数据库中。例如: ```python import pymysql #连接数据库 db = pymysql.connect(host="localhost", user="root", password="password", database="library") #创建游标 cursor = db.cursor() #插入图书信息 sql = "INSERT INTO books (book_name, author, publisher, price) VALUES (%s, %s, %s, %s)" values = ("Python基础教程", "Magnus Lie Hetland", "人民邮电出版社", 68.00) cursor.execute(sql, values) #提交到数据库执行 db.commit() #关闭游标和数据库连接 cursor.close() db.close() ``` 2. 删除图书信息:可以通过Python程序输入图书编号或名称,然后从数据库中删除对应的记录。例如: ```python import pymysql #连接数据库 db = pymysql.connect(host="localhost", user="root", password="password", database="library") #创建游标 cursor = db.cursor() #删除图书信息 sql = "DELETE FROM books WHERE book_id = %s" book_id = 1 cursor.execute(sql, book_id) #提交到数据库执行 db.commit() #关闭游标和数据库连接 cursor.close() db.close() ``` 3. 修改图书信息:可以通过Python程序输入图书编号或名称,然后修改对应的记录。例如: ```python import pymysql #连接数据库 db = pymysql.connect(host="localhost", user="root", password="password", database="library") #创建游标 cursor = db.cursor() #修改图书信息 sql = "UPDATE books SET price = %s WHERE book_id = %s" values = (58.00, 1) cursor.execute(sql, values) #提交到数据库执行 db.commit() #关闭游标和数据库连接 cursor.close() db.close() ``` 4. 查询图书信息:可以通过Python程序输入图书名称或作者进行查询,然后从数据库中查询对应的记录。例如: ```python import pymysql #连接数据库 db = pymysql.connect(host="localhost", user="root", password="password", database="library") #创建游标 cursor = db.cursor() #查询图书信息 sql = "SELECT * FROM books WHERE book_name = %s" book_name = "Python基础教程" cursor.execute(sql, book_name) #获取查询结果 result = cursor.fetchall() #打印查询结果 for row in result: print("书名:", row[1]) print("作者:", row[2]) print("出版社:", row[3]) print("价格:", row[4]) #关闭游标和数据库连接 cursor.close() db.close() ``` 以上是Python图书管理系统的增删改查功能的实现方法,希望对您有所帮助。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值