用python实现省市县多级嵌套下拉列表

本文介绍了作者在大学慕课项目中,如何利用Python和环境云API,实现全国省市县多级嵌套下拉列表。通过处理areaid.xlsx数据,创建了省份、市区和县区的关联字典,并使用wxpython库构建GUI,实现下拉列表的级联选择功能。项目还包含了天气预报等多个功能模块的实现。
摘要由CSDN通过智能技术生成

在大学慕课学习过python后,结课作业是让我们做出一个小项目,提供了很多方向,鉴于本人爬虫能力很弱,我选择基于环境云网站提供的API接口,实现了天气预报功能以及过去的天气数据分析功能,其中对于我来说比较困难的是如何实现覆盖全国的省市县下拉列表的实现,下面是我的实现思路

1.处理数据表

在环境云网站我得到了全国的省市县的areaid.xlsx文件,如下。

  • 第一步
    首先我将上面的文件转换成了areaid.csv形式,然后利用python中的pandasread_csv函数很方便的将.csv文件转换成了Dataframe数据结构。
pd.read_csv(file_path)

在这里插入图片描述

  • 第二步
    将得到的Dataframeindex属性设置为NAMEEN中的所有元素组成的一个列表,这样设置一方面是为了便于后来的处理,另一方面是因为Dataframe这种数据类型的index不支持中文,下面是我的实现代码。
    csv_file = pd.read_csv(file_path) #file_path是areaid.csv文件的路径
    list_index = [i for i in csv_file.NAMEEN] 
    csv_file.index = list_index	#将Dataframe的index属性换成所有县区的汉语拼音
    csv_file_once = csv_file.drop(['NAMEEN'], axis = 1)	#去掉Dataframe中的NAMEEN元素

下面是处理后的效果
在这里插入图片描述

  • 第三步得到省份和市区的列表
    首先将Dataframe中的PROVCN元素取出来然后利用集合去掉重复的元素,最后将其处理成一个省份列表,市区的处理过程同上。
  #省份的处理
    list_P = csv_file_onece.PROVCN
    Shengfen_once = set(i for i in list_P)
    Shengfen_second = list(Shengfen_onece)
   #市区的处理
   	list_D = csv_file_onece.DISTRICTCN
  	Shiqu_onece =  set(i for i in list_D)
    Shiqu_second =
评论 1
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值