zoukankan      html  css  js  c++  java
  • Python实现用户交互,显示省市县三级联动的选择

    题目:Python实现用户交互,显示省市县三级联动的选择

    定义的字典为:

      dic = {   

          "江西": {    "萍乡": ["安源", "彭高", "上栗"],    "新余": ["良山", "新钢", "兴安岭"],    },  

          "北京": {    "大兴区": ["礼贤镇", "魏善庄镇", "北臧村镇"],    "昌平区": ["沙河", "化庄", "白浮泉"],    },   

          "福建": {    "莆田": ["荔城", "西天尾", "九化山"],    "厦门": ["湖里", "思明", "海仓"],    }  

     }

    分析:

      大体步骤分为以下三步:

      1、用户输入一个省份时,判断用户输入的省份是否在字典里。

      2、当用户输入的省份在字典里时,将用户输入的这个省份所对应的所有值——该省份下的所有城市的字典取出来。

      3、将该省分所对应的所有城市打印出来后,当用户再输入要查找的城市时,如果存在则将相对应城市下的县取出来。

    代码:

    dic = {
        "江西": {
            "萍乡": ["安源", "彭高", "上栗"],
            "新余": ["良山", "新钢", "兴安岭"],
        },
        "北京": {
            "大兴区": ["礼贤镇", "魏善庄镇", "北臧村镇"],
            "昌平区": ["沙河", "化庄", "白浮泉"],
        },
        "福建": {
            "莆田": ["荔城", "西天尾", "九化山"],
            "厦门": ["湖里", "思明", "海仓"],
        }
    }
    print('可查询的省份:江西、北京、福建')
    
    # 让用户输入要查询的省份。
    while True:
        province = input('请输要查询的省份:')
    
        # 当用户输入的省份不在要查询的字典中时,跳出本次循环,继续让用户输入。
        if not province in dic:
            print('输入错误,请重新输入')
            continue
    
        # 当用户输入的要查询的省份在字典中时,跳出循环。
        break
    
    # 将用户输入的省份去取出字典中的指定的省份(键)的值——市级字典,
    # 然后遍历每个市级字典,遍历的的结果是取出市级字典中每个键。
    for i in dic[province]:
        print(i,end = ' ') # 取出的市级字典中的每个城市(键),并作一行显示。
    
    # 让用户输入要查询的城市。
    while True:
        city = input('请输入要查询的城市:')
    
        # 当用户输入的城市不在要查询的子字典中时,跳出本次循环,继续让用户输入。
        if not city in dic[province]:
            print('输入错误')
            continue
    
        # 当用户输入的要查询的城市在子字典中时,跳出循环。
        break
    
    # 将用户输入的城市去取出子字典中的指定的城市(键)的值——县级列表
    # 然后遍历每个镇县级列表,遍历的的结果是取出县级列表中的每个县名。
    for j in dic[province][city]:
        print(j,end=' ')
    

      

  • 相关阅读:
    阿里云容器服务多项重磅发布:高效智能、安全无界的新一代平台
    400倍加速, PolarDB HTAP实时数据分析技术解密
    先行一步,7大技术创新和突破,阿里云把 Serverless 领域的这些难题都给解了
    一图看懂云栖大会「云原生」重磅发布
    云栖发布|企业级互联网架构全新升级 ,助力数字创新
    3000份限量款云小宝手办全网首发,等你带回家!
    基于Delta lake、Hudi格式的湖仓一体方案
    git的clone和github的fork
    对vue的solt的理解
    对云信SDK的研究1
  • 原文地址:https://www.cnblogs.com/fyknight/p/7986250.html
Copyright © 2011-2022 走看看