首先,在网上拿到一份数据,省份和城市的对应表:
第一张图是省份以及对应的ID
第二张图是省份和城市,以及分别对应的ID
基本的思路是:实现一个字典,省份作为键,省份包含的城市作为值,举个例子:{“江苏省”:“南京市”,“苏州市”,··· “徐州市”}。
下面用代码实现:
1. 改变工作目录
1 importos2 importpandas as pd3 os.chdir(r'D:\inde\machineLearning\python\Province_city\xml')
2.1 导入省份数据(也就是图1)
with open('Provinces.txt','r',encoding='utf-8') as f:
file= f.read().strip().split('\n')
num=[]
province=[]for fi in file[2:36]:
str1= fi.split('"')
m= str1[1]
n= str1[3]
num.append(m)
province.append(n)
3.1 合并省份数据
province = pd.concat([pd.DataFrame(num),pd.DataFrame(province)]