首页 > 编程语言 >Python循环三级菜单

Python循环三级菜单

时间:2024-01-25 19:23:56浏览次数:22  
标签:菜单 Python choice2 choice flag exit print data 三级

Python循环三级菜单

选择城市》选择区》选择区内的公司等

三级菜单循环

# coding=utf-8
# Version:python3.6
# Name:shiwei
data = {
    '北京': {
        '海淀': {
            '五道口': {
                'soho': {},
                '网易': {},
                'google': {},
            },
            '中关村': {
                '爱奇艺': {},
                '汽车之家': {},
                'youku': {},
            },
            '上地': {
                '百度': {},
            }
        },
        '昌平': {
            '沙河': {
                '老男孩': {},
                '北航': {},
            }
        },
        '朝阳': {},
        '东城': {},
    },
    '上海': {
        '宝山': {
            '大场': {},
            '上海大学': {},
        },
        '松江': {
            '佘山': {},
            '欢乐谷': {},
            '月亮湖': {},
        }
    },
    '杭州': {}
}
 
exit_flag = False
 
while not exit_flag:
    for i in data:
        print(i)
    choice = input('选择进入1>>')
    if choice in data:
        while not exit_flag:
            for i2 in data[choice]:
                print('\t', i2)
            choice2 = input('选择进入2>>')
            if choice2 in data[choice]:
                 while not exit_flag:
                    for i3 in data[choice][choice2]:
                        print('\t\t', i3)
                    choice3 = input('选择进入3>>')
                    if choice3 in data[choice][choice2]:
                            for i4 in data[choice][choice2][choice3]:
                                print('\t\t\t', i4)
                            choice4 = input('最后一层, 按b返回>>')
                            if choice4 == 'b':
                                pass  # 或者continue
                    elif choice3 == 'b':
                        break
                    elif choice3 == 'q':
                        exit_flag = True
                    else:
                        print('没有下级菜单了!按b 返回上级把!')
                        continue
 
            elif choice2 == 'b':
                break
            elif choice2 == 'q':
                exit_flag = True
            else:
                print('没有下级菜单了!按b 返回上级把!')
                continue
    elif choice == 'q':
         exit_flag = True
else:
    print('Byebye!')

标签:菜单,Python,choice2,choice,flag,exit,print,data,三级
From: https://www.cnblogs.com/mengdie1978/p/17880078.html

相关文章

  • python(48) 进程,线程 ,协程、
    python(48):进程,线程,协程、区别进程:拥有代码和打开的文件资源、数据资源、独立的内存空间。线程:线程从属于进程,是程序的实际执行者。一个进程至少包含一个主线程,也可以有更多的子线程。线程拥有自己的栈空间。对操作系统来说,线程是最小的执行单元,进程是最小的资源管理单元。......
  • Python web crawler(2.1)多循环嵌套练习
    写个函数,传入(书名:book,标题:tittle,内容:content),要求在book文件夹下(不存在则创建),创建每个tittle.txt文件,写入content内容importosdefsave_to_file(folder_book,title,content):#如果文件夹不存在,则创建ifnotos.path.exists(folder_book):os.makedirs(......
  • python之生成器
    1.生成器优势节省空间:生成器按需生成值,避免了一次性加载所有数据到内存中。这对于处理大型数据集尤其重要。惰性计算:生成器支持惰性计算,只有在需要时才计算值。这在处理无限序列或需要动态生成数据的场景中非常有用。一次性使用:生成器通常是一次性的,一旦遍历完毕,就需要重新创......
  • locust+python性能测试库
    一.简介locust官网介绍:Locust是一个用于HTTP和其他协议的开源性能/负载测试工具。其对开发人员友好的方法允许您在常规Python代码中定义测试。Locust测试可以从命令行运行,也可以使用其基于Web的UI运行。可以实时查看吞吐量、响应时间和错误和/或导出以供以后分析。二.......
  • Python并发编程之进程池,线程池与信号量
    【一】进程池和线程池【0】池池的概念:资源管理:池用于管理和维护一组资源(如进程或线程),而不是每次需要时都创建和销毁这些资源。这有助于减少创建和销毁的开销。并发处理:池允许并发地执行多个任务,每个任务由池中的一个资源处理。这提高了程序的并发性能。任务队列:池通......
  • python之装饰器使用场景
    1.用户登录认证有三个界面需要登录认证通过后才能查看一个登录函数作为装饰器调用使用@函数名调用中如果加参数,则装饰器需要再加一层1deflogin(func):2defdesc(*args,**kwargs):3user='test'4passwd='123456'5n=06......
  • 详解ElasticSearch Python Client ReadTimeout
    详解ElasticSearchPythonClientReadTimeout在使用Python连接Elasticsearch时,我们经常会遇到一些异常情况,其中之一就是ReadTimeout错误。本文将详细介绍这个错误的原因以及如何处理。什么是ReadTimeout错误?ReadTimeout错误通常是由Elasticsearch连接超时引起的。当在与Elasticsea......
  • JAVA调用Python脚本执行
    SpringBoot-web环境<dependency><groupId>org.springframework.boot</groupId><artifactId>spring-boot-starter-web</artifactId></dependency>springboot--启动类@SpringBootApplication(ex......
  • python代码
    #读取.mat文件mat_data=scipy.io.loadmat('C.mat')#获取矩阵数据adj_matrix=mat_data['C']一个简短的python代码:alph=['A','B','C','D','E','F','G','H','I','J......
  • Python基础语法:代码规范、判断语句与循环语句
    Python是一种高级、动态类型的编程语言,其语法清晰、简洁,易于学习。本文将介绍Python基础语法中的代码规范、判断语句和循环语句。一、代码规范良好的代码规范可以提高代码的可读性和可维护性。在Python中,有一些常见的代码规范建议:使用有意义的变量名。变量名应该清晰地描述变量的用......