Python程式3——三級菜單程式

來源:互聯網
上載者:User

標籤:exit   嵌套   googl   愛奇藝   嵌套if   python   class   迴圈   put   

程式: 三級菜單

要求: 

  1. 列印省、市、縣三級菜單
  2. 可返回上一級
  3. 可隨時退出程式
  1 menu = {  2     ‘北京‘:{  3         ‘海澱‘:{  4             ‘五道口‘:{  5                 ‘soho‘:{},  6                 ‘網易‘:{},  7                 ‘google‘:{}  8             },  9             ‘中關村‘:{ 10                 ‘愛奇藝‘:{}, 11                 ‘汽車之家‘:{}, 12                 ‘youku‘:{}, 13             }, 14             ‘上地‘:{ 15                 ‘百度‘:{}, 16             }, 17         }, 18         ‘昌平‘:{ 19             ‘沙河‘:{ 20                 ‘老男孩‘:{}, 21                 ‘北航‘:{}, 22             }, 23             ‘天通苑‘:{}, 24             ‘回龍觀‘:{}, 25         }, 26         ‘朝陽‘:{}, 27         ‘東城‘:{}, 28     }, 29     ‘上海‘:{ 30         ‘閔行‘:{ 31             "人民廣場":{ 32                 ‘炸雞店‘:{} 33             } 34         }, 35         ‘閘北‘:{ 36             ‘火車戰‘:{ 37                 ‘攜程‘:{} 38             } 39         }, 40         ‘浦東‘:{}, 41     }, 42     ‘山東‘:{}, 43 } 44  45 exit_flag = True   # 設定跳出整個迴圈的指標 46  47 while exit_flag:             #如果要一直在這個菜單裡面,要直接用死迴圈; 48     #如果裡面有幾個迴圈,那麼現有的知識中,只能設定一個外面的變數來設定允出準則 49     for i in menu:   #顯示當前這一層的內容 50         print(i) 51  52     choice1 = input(‘請輸入省份,退出請輸入q‘) 53  54     if choice1 in menu: 55         #這個是省份一層 56         while exit_flag: 57             for i2 in menu[choice1]: 58                 print(i2) 59             choice2 = input(‘請輸入區,b為上一層,q為退出‘) 60             if choice2 in menu[choice1]: 61                 #這個是區一層 62                 while exit_flag: 63                     for i3 in menu[choice1][choice2]: 64                         print(i3) 65                     choice3 = input(‘請輸入地點,b為上一層,q為退出‘) 66                     if choice3 in menu[choice1][choice2]: 67                         #這個是最底層 68                         while exit_flag: 69                             if i3 in menu[choice1][choice2][choice3]: 70                                 print(i3) 71                             print("這個是最後一層") 72                             choice4 = input(‘選擇b,或者q‘) 73                             if choice4 == "b": 74                                 break 75                             elif choice4 == "q": 76                                 exit_flag =False 77                                 break         #這裡一定要記得break,這樣exit_flag才會生效的,跳出整個迴圈 78                             else: 79                                 print(‘你的輸入有誤‘) 80                                 break               #這裡一定要記得退出 81                     elif choice3 == "b": 82                         break 83                     elif choice3 == "q": 84                         exit_flag = False 85                         break  # 這裡一定要記得break,這樣exit_flag才會生效的,跳出整個迴圈 86                     else: 87                         print(‘你的輸入有誤‘) 88                         break  # 這裡一定要記得退出 89             elif choice2 == "b":            #elif可以多個一起用的,這樣就可以避免多層嵌套if。 90                 break 91             elif choice2 == "q": 92                 exit_flag = False 93                 break  # 這裡一定要記得break,這樣exit_flag才會生效的,跳出整個迴圈 94             else: 95                 print(‘你的輸入有誤‘) 96                 break  # 這裡一定要記得退出 97     elif choice1 == "b": 98         break 99     elif choice1 == "q":100         exit_flag = False101         break  # 這裡一定要記得break,這樣exit_flag才會生效的,跳出整個迴圈102     else:103         print(‘你的輸入有誤‘)104         break  # 這裡一定要記得退出105 106     break

寫成這樣感覺還是挺low的,後面的二十幾行代碼就是複製了。

Python程式3——三級菜單程式

聯繫我們

該頁面正文內容均來源於網絡整理,並不代表阿里雲官方的觀點,該頁面所提到的產品和服務也與阿里云無關,如果該頁面內容對您造成了困擾,歡迎寫郵件給我們,收到郵件我們將在5個工作日內處理。

如果您發現本社區中有涉嫌抄襲的內容,歡迎發送郵件至: info-contact@alibabacloud.com 進行舉報並提供相關證據,工作人員會在 5 個工作天內聯絡您,一經查實,本站將立刻刪除涉嫌侵權內容。

A Free Trial That Lets You Build Big!

Start building with 50+ products and up to 12 months usage for Elastic Compute Service

  • Sales Support

    1 on 1 presale consultation

  • After-Sales Support

    24/7 Technical Support 6 Free Tickets per Quarter Faster Response

  • Alibaba Cloud offers highly flexible support services tailored to meet your exact needs.