Python编写三级目录(升级版)

@TOC——递归函数

功能说明

1、三级菜单
2、可依次选择进入各子菜单,选择相应标签进入目录
3、输入b返回上级目录,q退出目录查询

程序如下:

menu={'中国':{'河北':{'石家庄':{},'邢台':{},'衡水':{}},
              '北京':{'昌平':{},'海淀':{},'朝阳':{}},
              '山西':{'太原':{},'大同':{},'运程':{}}},
      '美国':{'纽约州':{'纽约市':{},'罗彻斯特':{},'水牛城':{}},
              '加利福利亚州':{'洛杉矶':{},'好莱坞':{},'阿罕布拉':{}},
              '宾夕法尼亚州':{'费城':{},'伯利恒':{},'华盛顿':{}}},
              '澳大利亚':{'维多利亚州':{'墨尔本':{},'吉朗':{},'巴里迪':{}},
              '西澳大利亚州':{'马扎尔':{},'柏斯':{},'费里曼图':{}},
              '南澳大利亚州':{'阿德莱德':{},'内陆':{},'巴罗莎':{}}}}
#当前目录和下一级目录的就是字典中键和值的关系
'''按b键返回查询,按q键结束查询'''
def three_search(dic):
    global flag
    flag = 1
    while True:
        if flag==1:
            for k in dic:print(k)
        key=input('>>>').strip()#去除开头或结尾的空字符
        if key=='b'or key=='q': #输入b返回查询,输入q彻底结束查询
            flag=1
            return key
        elif key in dic.keys()  :
            flag=1
            if dic.get(key, 0) == {}:
                print('null')
                flag = 0
            ret=three_search(dic[key])#精髓:通过递归取出键的值,即进入下一级目录
            if ret=='q':
                return 'q'

three_search(menu)

效果如下:

1、进入各级菜单
在这里插入图片描述
2、返回上一级菜单
加粗样式
**
3、直接退出目录查询
在这里插入图片描述
希望可以帮助到大家,感谢大家的支持!

  • 0
    点赞
  • 2
    收藏
    觉得还不错? 一键收藏
  • 1
    评论
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值