码迷,mamicode.com
首页 > 编程语言 > 详细

python三级菜单的实现

时间:2017-05-28 00:54:51      阅读:248      评论:0      收藏:0      [点我收藏+]

标签:match   upper   set   登录管理   三级   his   strip()   not   port   

#!/usr/bin/env python
# -*- coding: utf-8 -*-
# @Time : 2017-05-20 2:43
# @Author : wlgo2108
# @Site :
# @File : Menu01.py
# @Software: PyCharm
# @Email : wlgo2108@126.com

import re
import sys

menu = {
"M:主菜单":{
"L:登录管理":{
"LU:修改密码":{},
"LR:密码复位":{},
"LL:重新登录":{},
"LH:挂起系统":{}
},
"C:客户管理":{
"CM:客户信息管理":{
"CMA:添加客户":{},
"CMU:更新客户":{}
},
"CR:客户关系维护":{}
},
"S:系统管理":{
"SU:用户管理":{
"SUA:添加用户":{},
"SUU:更新用户":{}
},
"SL:权限管理":{
"SLL:授权":{},
"SLC:取消权限":{}
},
"SH:假日参数":{}
}
}
}

his_menu = ["M","M"]
cur_menu = menu
flag = False


def check_menu(menu_dict={},key=""):
if isinstance(menu_dict,dict):
for k,v in menu_dict.items():
if key == k.split(":")[0]:
c_menu = dict(v)
set_his_menu(key)
for k in c_menu:
print(k)
return True
elif isinstance(v,dict):
check_menu(v,key)
return False


def set_his_menu(key) :
his_menu[0] = his_menu[1]
his_menu.remove(his_menu[1])
his_menu.append(key)
print(his_menu)

for k in cur_menu:
print(k)

while not flag:
key = str(input("输入菜单快捷键:")).strip().upper()
if re.match("Q|E",key):
print("退出系统")
sys.exit(0)
elif re.match("B",key):
key = his_menu[0]
check_menu(menu_dict=cur_menu,key=key)
else:
check_menu(menu_dict=cur_menu,key=key)


python三级菜单的实现

标签:match   upper   set   登录管理   三级   his   strip()   not   port   

原文地址:http://www.cnblogs.com/wlgo2108/p/6914818.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!