由于部分模块现在已经弃用,因此使用书中代码会报错
1、countries.py 获取两个字的国别码使用 pygal.i18n 模块报错
from pygal.i18n import COUNTRIES
ModuleNotFoundError: No module named ‘pygal.i18n’
解决方案:
使用 pygal_maps_world.i18n 代替 pygal.i18n
from pygal_maps_world.i18n import COUNTRIES
完整代码如下:
# from pygal.i18n import COUNTRIES
from pygal_maps_world.i18n import COUNTRIES
def get_country_code(country_name):
"""根据指定的国家, 返回Pygal使用的两个字母的国别码"""
for code, name in COUNTRIES.items():
if name == country_name:
return code
# 如果没有找到指定的国家, 就返回None
return None
2、world_population.py 绘制完整世界人口地图创建 Worldmap 实例报错<