Python之多层菜单(第1天)

作业2:多级菜单
三级菜单
可依次选择进入各子菜单
所需新知识点:列表、字典


1、流程图

2、登录界面,输入对应索引

#!/usr/bin/env python3
# -*- coding:utf-8 -*-
# Version:Python3.5.0

# 初始化城市信息
city_dict = {‘广州‘: {‘天河‘: [‘天河体育馆‘, ‘金山大夏‘],
                    ‘越秀‘: [‘越秀公园‘, ‘光孝寺‘],
                    ‘番禺‘: [‘长隆欢乐世界‘, ‘大夫山‘]},
             ‘深圳‘: {‘福田‘: [‘莲花山‘, ‘赛格‘],
                    ‘龙华‘: [‘元山公园‘, ‘龙城广场‘],
                    ‘南山‘: [‘世界之窗‘, ‘欢乐谷‘]},
             ‘佛山‘: {‘禅城‘: [‘梁园‘, ‘孔庙‘],
                    ‘南海‘: [‘千灯湖‘, ‘南国桃园‘],
                    ‘顺德‘: [‘清晖园‘, ‘西山庙‘]}}

# 创建城市索引列表
city_index = [(index, key) for index, key in enumerate(city_dict)]
city_index.append((len(city_index), ‘退出‘)) # 增加退出选项
while True:
    print(‘欢迎查询城市信息‘)
    print(‘--------------------------------‘)
    for i in city_index:    # 打印城市索引菜单
        for j in i:
            print(j, end=‘ ‘)
        print(‘‘)

    get_city = input(‘请选择查询的索引号:‘)
    if not get_city.isdigit():
        print(‘请输入一个数字索引号。‘)
        continue
    elif int(get_city) >= len(city_index):   # 输入索引号大于等于城市索引号长度
        print(‘输入的数字太大,请重输入。‘)
        continue
    elif int(get_city) == len(city_index)-1:   # 最大的索引号为 退出程序对应的索引号
        print(‘欢迎再次登录,bye bye!‘)
        break
    else:
        choose_city = city_index[int(get_city)][1]   # 获取选择的城市名称
        # 创建 区 的索引列表
        area_index = [(index, key) for index, key in enumerate(city_dict[choose_city])]
        area_index.append((len(area_index), ‘返回‘))  # 增加返回上一级菜单选项
        while True:
            for i in area_index:    # 打印选择城市的区索引菜单
                for j in i:
                    print(j, end=‘ ‘)
                print(‘‘)

            get_area = input(‘请选择查询的索引号:‘)
            if not get_area.isdigit():
                print(‘请输入一个数字索引号。‘)
                continue
            elif int(get_area) >= len(area_index):   # 输入索引号大于城市索引号
                print(‘输入的数字太大,请重输入。‘)
                continue
            elif int(get_area) == len(area_index)-1:  # 最大的索引号为 上级菜单对应的索引号
                print(‘返回到上一级菜单。‘)
                break
            else:
                choose_area = area_index[int(get_area)][1]  # 获取选择区的名称
                print(city_dict[choose_city][choose_area])  # 打印该区的信息
                print(‘--------------------------------‘)

  

时间: 2024-12-09 21:40:30

Python之多层菜单(第1天)的相关文章

python 编写三级菜单

python版本 python3.5 所需用到的知识: 1,字典,列表 2,for while循环 查看代码 cat caidan.py #!/usr/bin/env python#_*_ coding:utf-8 _*_ import sys #列出商品的种类shopping = { "京东":{ "服装城":["女装","男装","童装"], "电器城":["电脑"

移动端的推拉效果导航菜单-支持响应式及其多层菜单

在线演示 本地下载 Off Canvas Infinity Push是一个帮助你开发推拉式移动端导航菜单的jQuery插件,支持响应式,并且支持无限多层菜单导航!

Python题目2:多层菜单,进入和退出(字典)

3级菜单,可进入下一层,可退到上一层 date = { "1" : { "11" : { "111" : ["A","B"], "112" : ["C","D"], }, "12" : { "121" : ["E","F"], "122" : [&q

python学习---三级菜单

开发环境: OS:64位Windows 7 IDE:pycharm4.0.4 python版本:2.7.10 程序简述: a.本程序实现的功能为球迷可以选出自己喜欢的球队与球员 b.程序共三级目录,第一级分东部与西部分区,第二级为各分区下的球队列表,第三级为球队列表下的球员列表,每个球员的基本信息为球员比赛角色 c.在每一级目录下,客户可以在当级目录下进行选择,序号对应选项,q对应退出整个程序,b代表回到上一级重新选择. 版权说明: 本多级菜单程序只做python学习使用,版权有作者所有,未经过

Python之多级菜单

要求: 三级菜单 可依次选择进入各子菜单 流程图后续再补充 代码如下: 1 #!/usr/bin/env python 2 # -*- coding:utf-8 -*- 3 # Author Jiang 4 5 menu={ 6 '陕西':{ 7 '西安':['大雁塔','兵马俑'], 8 '宝鸡':['法门寺','云台山'], 9 '汉中':['青木川','武侯祠'], 10 }, 11 '山西':{ 12 '太原':['晋祠','纯阳宫'], 13 '大同':['恒山','华严寺'], 14

python作业-多级菜单

练习python多级菜单的读功能,其实就是列表或者字典的iter 功能要求: 运行程序输出第一级菜单 选择一级菜单某项,输出二级菜单,同理输出三级菜单 菜单数据保存在文件中 让用户选择是否要退出 有返回上一级菜单的功能 下面是一个简单版本的:通过逐步迭代读取列表,这里其实可以看到有好多的重复代码.比如每次都迭代menu_dict[choice].. 文艺青年版其实就是将之前一直重复使用的东西给弄成变量,然后每次选择完之后重新给men_dict赋值 原文地址:http://blog.51cto.c

自动化测试——Selenium+Python之下拉菜单的定位

1.通过selenium.webdriver.support.ui的Select进行定位 下拉菜单如下图: 定位代码(选择Male): ...from selenium.webdriver.support.ui import Select...    # 通过index进行选择    Select(driver.find_element_by_id("gender")).select_by_index(1)    # 通过value进行选择    Select(driver.find_

python之三级菜单

1 #-*- coding:utf-8 -*- 2 3 '''******************************************************' 4 三级菜单 5 1. 运行程序输出第一级菜单 6 2. 选择一级菜单某项,输出二级菜单,同理输出三级菜单 7 3. 返回上一级菜单和顶部菜单 8 4. 菜单数据保存在文件中" 9 '******************************************************''' 10 11 import

python中多层循环的一键退出

在单层循环的退出中,使用break即能退出,那么多层循环呢?机智的人们使用flag标识符的方式,例如: a=['a',1,2,3,4] b=['b',1,2,3,4] c=['c',1,2,3,4] d=['d',1,2,3,4] break_flag=0 while break_flag==0: y_n=input('a,yes or no:') if y_n == 'n': break elif y_n == 'y': for i in a: print(i) while break_fla