标签:
介绍:
利用函数递归实现
理论上可生成N级
支持返回上级
原创作品,转载注明出处。#!-*- coding:utf-8 -*-
__author__ = 'David'
class CreateMenu(object):
def __init__(self):
self.temp_menu = {} # 临时菜单,存储每级菜单的字典。
def run(self, menu_dict, initial=0):
'''
:param menu_dict: 原始菜单字典,格式:{1:{2:{3:{4:{5:'value'}}}}},可以返回5的值
:param initial: 菜单等级控制参数,默认0级,最上层菜单
:return: 返回值是字典中最小参数值,字符串格式。
'''
self.temp_menu[initial] = menu_dict
if type(menu_dict) is dict:
temp = {}
i = 1 # 菜单标号数字
# 生成选择菜单
for k, v in menu_dict.items():
t = str(i)
temp[t] = k
print('{}: {}'.format(i, k))
i += 1
pri