参考教材
chapter16 数据可视化
引言
在第二小节里面,我们学习并绘制了一张世界人口分布图,但是在提取相关数据时,我们发现,由于格式不规范,原始数据中的很多地区并没有相应的国别码,在这个练习中,我们需要尽量改善这个问题......
原题
本节制作人口地图时,对于大约12个国家,程序不能自动确定其两个字母的国别码,请找出这些古欧家,在字典 COUNTRIES 中找到他们的国别码,然后对于每个这样的国家,都在原代码中添加一个if-elif代码块,用于返回其国别码
开始!
啧啧啧,才12个国家,手工添加也不是很多嘛!但是,根据上一节被坑的经验,我们还是来看一看到底找不到国别码的地区有多少个好了
先小小地修改一下代码, 把有问题的地区先存到列表 err_country 中
for pop_dict in pop_data:
if pop_dict['Year'] == '2010':
country_name = pop_dict['Country Name']
population = int(float(pop_dict['Value']))
code = get_country_code(country_name)
if code:
cc_population[code] = population
if code == None:
err_country.append(country_name)
err_pop.append(population)
print(err_country)
看一看结果:
(ノ=Д=)ノ┻━┻ 这么多的问题地区是什么情况!!!!
好吧,事已至此,我们想想怎么用代码解决这个问题
先观察一下这个 err_country 列表
我们发现在 'World' 这个词之前,都是一些一眼就能看出不是国家的元素
先把它们全都删掉再说!
先贴代码:
err_pop = []
key = True
for pop