標籤:題目 錯誤 增加 color 作業 col topic 添加 列表
作業題目: 三級菜單
menu = { ‘北京‘:{ ‘海澱‘:{ ‘五道口‘:{ ‘soho‘:{}, ‘網易‘:{}, ‘google‘:{} }, ‘中關村‘:{ ‘愛奇藝‘:{}, ‘汽車之家‘:{}, ‘youku‘:{}, }, ‘上地‘:{ ‘百度‘:{}, }, }, ‘昌平‘:{ ‘沙河‘:{ ‘優衣庫‘:{}, ‘北航‘:{}, }, ‘天通苑‘:{}, ‘回龍觀‘:{}, }, ‘朝陽‘:{}, ‘東城‘:{}, }, ‘上海‘:{ ‘閔行‘:{ "人民廣場":{ ‘炸雞店‘:{} } }, ‘閘北‘:{ ‘火車站‘:{ ‘攜程‘:{} } }, ‘浦東‘:{}, }, ‘山東‘:{},}
需求:可依次選擇進入各子功能表可從任意一層往回退到上一層可從任意一層退出程式所需新知識點:列表、字典
基礎版:
while True: for i in menu: print(i) province = input("請選擇省份: (按Q退出)") if province == ‘Q‘: exit() else: print(‘輸入錯誤‘) if province in menu: while True: for i in menu[province]: print(i) city = input("請選擇市: (按Q退出,q返回)") if city == ‘Q‘: exit() if city == ‘q‘: break else: print(‘輸入錯誤‘) if city in menu[province]: while True: for i in menu[province][city]: print(i) county = input("請選擇區或縣: (按Q退出,q返回)") if county == ‘Q‘: exit() if county == ‘q‘: break else: print(‘輸入錯誤‘) if county in menu[province][city]: while True: for i in menu[province][city][county]: print(i) choice = input(‘Q退出,q返回:‘) if choice == ‘Q‘: exit() if choice == ‘q‘: break else: print(‘輸入錯誤‘)
裝逼版:
rank = menulast_rank = []while True: for i in rank: print(i) choice = input(‘>:‘).strip() if choice in rank: last_rank.append(rank) # 將當前菜單添加到列表 rank = rank[choice] # 進入下一層菜單 elif choice == ‘b‘: if len(last_rank) != 0: rank = last_rank.pop() # 刪除列表最後一位元素,從而返回上一層 elif choice == ‘Q‘: exit()
最裡層和最外層還可以增加相應提示。
Python入門-三級菜單