python報錯問題--ModuleNotFoundError: No module named 'pygal.i18n'
阿新 • • 發佈:2019-02-05
報錯問題:ModuleNotFoundError: No module named ‘pygal.i18n’
問題出處:
在《Python程式設計:從入門到實踐》書中的使用pygal.i18n模組獲取國別碼,但是 pygal已經沒有i18n模組,要改用pygal_maps_world.i18n
步驟:
1:匯入pygal_maps_world.i18n
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:執行檢查
可以看到完美的出錯啦!!!
繼續:
說明:
事實上,pygal.i18n 已經不存在了,現在已經更改成了 pygal_maps_world ,需要單獨通過pip下載
解決:安裝pygal_maps_world 模組
在步驟1處:
將from pygal_maps_world.i18n import COUNTRIES
from pygal.maps.world import COUNTRIES
步驟1程式碼:
from pygal.maps.world import COUNTRIES
def get_country_code(country_name):
"""根據指定的國家,返回pygal使用的兩個字母的國別碼"""
for code, name in COUNTRIES.items():
if name == country_name:
return code
# 如果沒有找到指定的國家,就返回None
return None
再次執行結果:完美解決