马上注册,结交更多好友,享用更多功能^_^
您需要 登录 才可以下载或查看,没有账号?立即注册
x
“制作地图前,还需要解决数据存在的最后一个问题。 Pygal 中的地图制作工具要求数据为特定的格式:用国别码表示国家,以及用数字表示人口数量。处理地理政治数据时,经常
需要用到几个标准化国别码集。 population_data.json 中包含的是三个字母的国别码,但 Pygal 使用两个字母的国别码。我们需要想办法根据国家名获取两个字母的国别码。
Pygal 使用的国别码存储在模块 i18n ( internationalization 的缩写)中。字典 COUNTRIES 包含的键和值分别为两个字母的国别码和国家名。要查看这些国别码,可从模块 i18n 中导
入这个字典,并打印其键和值:”
书上要求写的代码如下:
countries.pyfrom pygal.il8n import COUNTRIES
for country_code in sorted(COUNTRIES.keys()):
print(country_code,COUNTRIES[country_code])
运行后会发现报错。
“Traceback (most recent call last):
File "C:/Users/sesa430507/.spyder-py3/Project2-data visualization/Chapter 16 download data/countries.py", line 1, in <module>
from pygal.il8n import COUNTRIES
ModuleNotFoundError: No module named 'pygal.il8n'”
随后百度寻找,终于找到了对应的方法。
对于报错,事实上,pygal.i18n 已经不存在了,现在已经更改成了 pygal_maps_world ,需要单独通过pip下载,我使用的是Python3,因此需要在终端使用 pip3 指令进行安装:pip install pygal_maps_world
安装成功之后,就可以正常调用国别码了。
最终的代码:from pygal_maps_world.i18n import COUNTRIES
for country_code in sorted(COUNTRIES.keys()):
print(country_code,COUNTRIES[country_code])
打印出:
ad Andorra
ae United Arab Emirates
af Afghanistan
al Albania
am Armenia
ao Angola
--snip--
|