Country_code.py
'''
The i18n module was removed in pygal-2.0.0.
however, it can now be found in the pygal_maps_world plugin.
You can install that with pip install pygal_maps_world.
Then you can access COUNTRIES as pygal.maps.world.COUNTRIES:
from pygal.maps.world import COUNTRIES
Whats left of the i18n module can be imported with:
from pygal_maps_world import i18n
'''
#获取两个字母的国别码
from pygal_maps_world.i18n import COUNTRIES
def get_country_code(country_name):
for code,name in COUNTRIES.items():
if name==country_name:
return code
return None
Population.py
import json
from Country_codes import get_country_code
#提取相关数据
filename='population_data.json'
with open(filename) as f:
pop_data=json.load(f) #json.load()将数据转换为Python能够处理的格式并存储在pop_data中
for pop_dict in pop_data:
#获得每个国家2010年的人口数量
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:
print(code+':'+str(population))
else:
print('ERROR-'+country_name)
population_data.json 文件数据集:
链接:https://pan.baidu.com/s/1oPEJ1c4Z-IGXSbgqSY2Axw 密码:6qo6