python學習之路之案例3--多級菜單顯示城市詳細信息

1、整個案例運用到的知識點python

   1.python數據結構之字典的使用,字典嵌套字典,字典嵌套列表
數據結構

   2.python數據結構之列表的使用,字典嵌套列表
ide

   3.python數據結構之字符串的使用,字符串的格式化
ui

   4.while True死循環的使用
spa

   5.if...else....語句的使用
設計


2、案例設計核心思想utf-8

    1.將城市信息存儲在字典+列表的數據結構裏面裏面    ci

   2.將省、市、先設置成三級菜單字符串

   3.按照用戶的選擇可依次選擇進入各子菜單input



3、代碼

#!/usr/bin/env python
# -*- coding:utf-8 -*-
"""
message_dict = {
    "四川":{"廣安":["武勝","嶽池","鄰水"],"廣元":["旺蒼","蒼溪","廣元市區"]},
    "北京":{"海淀":["中關村","五道口","上地"],"朝陽":["常營","國貿","管莊"]}
}

print message_dict.keys()

"""
#使用字典和列表村村省、市、城鎮等信息
message_dict = {
    "sichuan":{
        "guangan":["wusheng","yuechi","linshui"],
        "guangyuan":["wangcang","cangxi"]
    },
    "beijing":{
        "chaoyang":["changying","guanzhuang","guomao"],
        "haidian":["zhongguancun","wudaokou","shangdi"]
    }
}

#打印顯示全部的省份
for i in range(len(message_dict.keys())):
    new_item1 = "%s:%s" %(i+1,message_dict.keys()[i])
    print new_item1

#要求用戶選擇要查看的的省份下面有哪些市區,並保證用戶輸入正確的省份
provence = raw_input("plz input select province:")
while True:
    if provence not in message_dict.keys():
        print "plz input correct!!!"
        provence = raw_input("plz input select province again:")
    else:
        break
message_dict1 = message_dict[provence]

#顯示對應省份的全部市區的信息
for j in range(len(message_dict1)):
    new_item2 = "%s:%s" %(j+1,message_dict1.keys()[j])
    print new_item2


#要求用戶輸入要查看的市區的有哪些城鎮,並保證用戶輸入正確
city = raw_input("plz select city:")
while True:
    if city not in message_dict1.keys():
        print "plz input correct!!!"
        city = raw_input("plz select city again:")
    else:
        break
message_list2 = message_dict1[city]
#打印用戶所要查看的市區的的全部城鎮
for k in range(len(message_list2)):
    new_item3 = "%s:%s" %(k+1,message_list2[k])
    print new_item3
相關文章
相關標籤/搜索