做网站的网络公司有哪些,苏州园区网站制作公司,网站所有权变更,wordpress分类页#!/usr/bin/env python3#coding:utf-8Created on: 2015年12月30日author: 张晓宇Email: 61411916qq.comVersion: 1.0Description: 三层菜单1、菜单一共三级即#xff1a;省#xff0c;市#xff0c;区县2、每一级菜单输入的如果输入的是菜单里的选项则进入下级菜单3、第1级菜…#!/usr/bin/env python3#coding:utf-8Created on: 2015年12月30日author: 张晓宇Email: 61411916qq.comVersion: 1.0Description: 三层菜单1、菜单一共三级即省市区县2、每一级菜单输入的如果输入的是菜单里的选项则进入下级菜单3、第1级菜单输入q退出系统4、第2、3级菜单输入q退出系统输入b返回上级菜单5、三级菜单全部正确打印最后的全部选择结果否则继续循环该机菜单Help:if __name__ __main__:parameters:provinces定义省一级菜单格式为字典{菜单序号:省名称, ...}citys定义省一级菜单格式为二级嵌套字典{省名称:{菜单序号:市名称}, ...}area定义区县一级菜单格式为二级嵌套字典{市名称:{菜单序号:区县名称}, ...}app_info系统信息主要用于显示provinces{1:北京,2:上海,3:河北省,}citys{北京:{1:北京市区,2:北京市郊区},上海:{1:上海市区},河北省:{1:石家庄市, 2:秦皇岛市, 3:保定市}}areas{北京市区:{1:东城区, 2:西城区, 3:海淀区, 4:朝阳区, 5:丰台区, 6:石景山区},北京市郊区:{ 1:通州区, 2:顺义区, 3:房山区, 4:大兴区, 5:昌平区, 6:怀柔区, 7:平谷区, 8:门头沟区, 9:密云县, 10:延庆县},上海市区:{1:黄浦区, 2:卢湾区, 3:徐汇区, 4:长宁区, 6:静安区, 7:普陀区, 8:闸北区, 9:虹口区, 11:杨浦区, 12:宝山区},石家庄市:{1:鹿泉, 2:正定, 3:藁城, 4:栾城, 5:高邑, 6:新乐, 7:辛集, 8:赵县, 9:深泽, 10:晋州},保定市:{1:南市区, 2:北市区, 3:新市区, 4:白沟新城区, 5:顺平县},秦皇岛市:{1:海港区, 2:山海关区, 3:北戴河区, 4:抚宁区, 5:昌黎县, 6:卢龙县, 7:青龙满族自治县}}app_info -----------------------------------| Welcome to 65brother system || Version: 1.0 || Author: zhangxiaoyu |-----------------------------------#初始化菜单列表主要是做了一次排序解决字典无序的问题这里的d[0]表示对key做排序int表示先转换成整数也就是按照整数的顺序进行排序否则如果序号超过10会出现1后面的是10而不是2province_list sorted(provinces.items(), key lambdad:int(d[0]))#初始化省一级菜单循环开关province_flag True#省一级菜单循环whileprovince_flag:#初始化市一级菜单的循环开关city_flag Trueprint(app_info)#打印当前用户的位置print(home)#打印省一级菜单print(-----------------------------------)for province_item inprovince_list:print(%s、%s %province_item)print(-----------------------------------)#获取用户输入的选项province input(请输入你的省份(输入q退出系统)).strip()#判断用户的输入if province q:#如果用户输入的是q关闭省一级菜单循环开关也就是退出系统province_flag Falseelif province inprovinces:#如果输入的是菜单的序号执行#获取省的名称province_name provinces[province]#初始化市一级菜单同省一样对key进行排序city_list sorted(citys[province_name].items(), key lambdad:int(d[0]))#市一级菜单循环whilecity_flag:#打印用户位置print(home%s %province_name)#打印市一级菜单print(-----------------------------------)for city_item incity_list:print(%s、%s %city_item)print(-----------------------------------)#获取用户输入city input(请输入你的城市(输入q退出系统输入b返回上一级菜单)).strip()#判断用户输入if city q:#如果输入q关闭省一级和市一级循环开关也就是退出系统province_flag Falsecity_flagFalseelif city b:#如果用户输入的是b关闭市一级循环开关继续省一级循环city_flag Falseelif city incitys[province_name]:#如果用户输入的是正确的菜单项#初始化区县一级循环开关area_flag True#获取市的名称city_name citys[province_name][city]#初始户区县菜单area_list sorted(areas[city_name].items(), key lambdad:int(d[0]))#区县一级循环whilearea_flag:#打印用户位置print(home%s%s %(province_name,city_name))#打印区县菜单print(-----------------------------------)for area_item inarea_list:print(%s、%s %area_item)print(-----------------------------------)#获取用户输入area input(请输入你的区/县(输入q退出系统输入b返回上一级菜单)).strip()#判断用户输入if area q:#如果是q关闭省、市、区县一级循环开关也就是退出系统area_flag Falsecity_flagFalseprovince_flagFalseelif area b:#如果是b关闭县一级循环开关继续市循环area_flag Falseelif area inareas[city_name]:#如果输入正确#获取区县名称area_name areas[city_name][area]#输出完整的三级菜单选择信息input(您选择的是%s%s%s。选择任意键退出系统 %(province_name, city_name, area_name))#关闭省、市、区县循环开关退出系统area_flag Falsecity_flagFalseprovince_flagFalseelse:#如果区县选项输入错误提示错误input(输入错误请重新输入输入任意键继续)else:#如果市选项输入错误提示错误input(输入错误请重新输入输入任意键继续)else:#如果省选项输入错误提示错误input(输入错误请重新输入输入任意键继续)