第一章練習題三級菜單
阿新 • • 發佈:2018-06-15
PE 知識點 老男孩 bsp pre == NPU append col
需求: 可依次選擇進入各子菜單 可從任意一層往回退到上一層 可從任意一層退出程序 所需新知識點:列表、字典
menu = { ‘北京‘: { ‘海澱‘: { ‘五道口‘: { ‘soho‘: {}, ‘網易‘: {}, ‘google‘: {} }, ‘中關村‘: { ‘愛奇藝‘: {}, ‘汽車之家‘: {},‘youku‘: {}, }, ‘上地‘: { ‘百度‘: {}, }, }, ‘昌平‘: { ‘沙河‘: { ‘老男孩‘: {}, ‘北航‘: {}, }, ‘天通苑‘: {}, ‘回龍觀‘: {}, }, ‘朝陽‘: {}, ‘東城‘: {}, },‘上海‘: { ‘閔行‘: { "人民廣場": { ‘炸雞店‘: {} } }, ‘閘北‘: { ‘火車站‘: { ‘攜程‘: {} } }, ‘浦東‘: {}, }, ‘山東‘: {}, } current_menu = menu previous_menu = [] while True: for m in current_menu:print(m) choice = input("請輸入你想查詢的城市,返回上級請輸1,退出請輸q") if choice in current_menu: previous_menu.append(current_menu) current_menu = current_menu[choice] elif choice == "1": if len(previous_menu) != 0: current_menu = previous_menu.pop() else: print("已是最頂層,無法再返回,請輸入您要查詢的城市,退出請輸q") elif choice == "q": print("您已退出,謝謝使用!") break else: print("您輸入的城市不正確,請重新輸入,返回上級請輸1,退出請輸q") # 思路:後期要常用兩個變量:當前層菜單和上級菜單,所以給這兩個變量做個定義,以便後面調用。 # 1、打印頂級菜單,提示用戶輸入 2、用戶輸入後進行判斷: # (1)用戶輸入名字在當前菜單裏,則進入下一級 # (2)用戶輸入名字為1且上級菜單不為空時,返回上一級菜單 # (3)用戶輸入名字為q,退出程序
第一章練習題三級菜單