需求:
1、三級菜單
2、可依次選擇進入各子菜單
3、可依次返回和終止各層次
流程圖:

程序如下:
#!/usr/bin/env python # -*- coding:utf-8 -*- # Author:Jack.Lee # FileName: three_level_menu #三級菜單采用字典來做,例子:省份—地市—景點 spot = { '廣東':{ "廣州":{"廣州塔","農講所","白云山"}, "深圳":{"世界之窗","歡樂谷","錦繡中華"}, "湛江":{"湖光巖","海濱公園","觀海長廊"} }, '廣西':{ "南寧":{"青秀山","鳳凰嶺","龍虎山"}, "桂林":{"陽朔","漓江","西街"}, "北海":{"銀灘","老街","潿洲島"} }, '浙江':{ "杭州":{"西湖","靈隱寺","千島湖"}, "溫州":{"青龍湖","九龍潭","望海樓"}, "寧波":{"東錢湖","天一閣","二靈塔"} } } exit_flag = False while not exit_flag: for P in spot: #打印第一層菜單 print(P) province = input("請輸入省份(按q退出):") if province == "q": print("您已退出系統,歡迎下次再用!") break if province in spot: while not exit_flag: #進入二級菜單循環 for C in spot[province]: print(C) city = input("請輸入地市(按q退出,b返回上一級):") if city == "b": break elif city == "q": exit_flag = True print("您已退出系統,歡迎下次再用!") elif city in spot[province]: while not exit_flag: # 進入三級菜單循環 for S in spot[province][city]: print(S) scenic_spot = input("請輸入景區(按q退出,b返回上一級):") if scenic_spot == "b": break elif scenic_spot == "q": exit_flag = True print("您已退出系統,歡迎下次再用!") elif scenic_spot in spot[province][city]: print("您選擇的景區:",'\033[34;1m',scenic_spot,'\033[0m') #30:黑,31:紅 ,32:綠,33:黃 ,34:藍色,35:紫色,36:深綠 ,37:白色; exit_flag = True else: print("\033[31;0m對不起!你輸入的景區不存在,請重新輸入!\033[0m") #打印錯誤信息,并且用紅色標注。顏色標識方法:\033[顯示方式;前景色;背景色m else: print("\033[31;0m對不起!你輸入的地市不存在,請重新輸入!\033[0m") else: print("\033[31;0m對不起!你輸入的省份不存在,請重新輸入!\033[0m")
Keep empowering yourself successfully...
浙公網安備 33010602011771號