• python学习(10)字典学习,写一个三级菜单程序


    学习了字典的应用。按老师的要求写一个三级菜单程序。

    三级菜单程序需求如下:

    1、深圳市的区--街道--社区---小区4级

    2、建立一个字典,把各级区域都装进字典里

    3、用户可以从1级进入2级再进入3级

    4、用户按B键可以返回,按Q键退出

    经验总结:

    (1)写这个程序,又花了半天,开始每次出现print只打印一行的情况。反复想出错在哪里,后面发现choice放在print后面才会出错。以后一定要注意python的格式。python格式要求比较简单,所以必须要注意嵌套格式,特别涉及到多重循环,一个空格就能让程序出错。

    (2)这个程序对于我理解多重循环语句和字典,很有帮助。

    (3)正如老师说的,用最LOW的方法写的这个程序是为了以后用高大上的方法写,如果LOW的方式都写不好,更别提高大上的方式了。

    (4)很喜欢python,越写越喜欢。老师说,当你写几百万条代码的时候,你就牛逼了。哈哈,自勉吧!

    程序如下:

     1 # -*- coding: UTF-8 -*-
     2 # Author:show530
     3 
     4 
     5 date={
     6     '罗湖':{
     7         "东晓街道":{
     8             "东晓社区":["今日家园","阳光明居","泰和花园"],
     9             "布心社区":["彩世界","布心花园","东晓花园"],
    10             "水库社区":["宝湖花园","水库家园","宝丰源"]
    11         },
    12         "东湖街道":{
    13             "东乐社区":["东乐花园","百仕达一期","百仕达二期"],
    14             "翠鹏社区":["翠鹏花园","名仕达","泰宁豪苑"],
    15             "金鹏社区":["金鹏花园","天御境界","华都馨苑"]
    16         },
    17         "东门街道":{
    18             "湖贝社区":["木头龙小区","深业大厦","花都院"],
    19             "螺岭社区":["万众豪苑","缤纷时代家园","金城华庭"],
    20             "东门社区":["东门168","立新花园","万科彩园"]
    21              }
    22         },
    23     '福田':{
    24         "福田街道":{
    25             "福华社区":["皇岗新村","皇御苑","共和世家"],
    26             "福民社区":["福民新村","绿茵阁","福涛东园"],
    27             "华强社区":["华强花园","红荔村","长泰花园"]
    28                     },
    29         "园岭街道":{
    30             "园岭社区":["园岭新村","盛世鹏程","鸿翔花园"],
    31             "红岭社区":["桂木园小区","红岭新村","荔香坊"],
    32             "百花社区":["长城花园","核电花园","国城花园"]
    33                     },
    34         "梅林街道":{
    35             "上梅林社区":["颐林雅院","中康生活","梅林四村"],
    36             "下梅林社区":["梅林一村","梅林二村","书香门第"],
    37             "银湖社区":["银湖谷","金景花园","金湖花园"]
    38                    }
    39         }
    40 }
    41 
    42 
    43 while True:
    44     for i in date:
    45         print(i)
    46     choice=input("
    请输入您的选择1:")
    47     if choice in date:
    48         while True:
    49             for j in date[choice]:
    50                 print("	",j)
    51             choice2=input("
    请输入您的选择2:")
    52             if choice2 in date[choice]:
    53                     while True:
    54                         for k in date[choice][choice2]:
    55                             print("		",k)
    56                         choice3 = input("
    请输入您的选择3:")
    57                         if choice3 in date[choice][choice2]:
    58                             while True:
    59                                 for l in date[choice][choice2][choice3]:
    60                                     print("			",l)
    61                                 choice4=input("
    最后一层,按B键返回上一层菜单:")
    62                                 if choice4=="B":
    63                                     break
    64                                 elif choice4=="Q":
    65                                     exit()
    66                         if choice3 == "B":
    67                             break
    68                         elif choice3 == "Q":
    69                             exit()
    70             if choice2 == "B":
    71                 break
    72             elif choice2 == "Q":
    73                 exit()
    74     if choice == "B":
    75         break
    76     elif choice == "Q":
    77         exit()
  • 相关阅读:
    [循环卷积]总结
    [FFT/NTT/MTT]总结
    [BZOJ 4870] 组合数问题
    [BZOJ 4809] 相逢是问候
    [BZOJ 4591] 超能粒子炮-改
    __getattribute__
    __repr__
    __reduce__
    数据库查询转excel小工具
    Git常用操作
  • 原文地址:https://www.cnblogs.com/show530/p/8630375.html
Copyright © 2020-2023  润新知