最近在练手python数据可视化,在《艾伯特Python编程:从入门到实践》这本书的第二个实践项目,使用pygal进行图表练习时,却无法正常运行所编写的程序。
经过排查,发现import pygal就会报错,报错提示为:
ModuleNotFoundError: No module named ‘importlib.metadata’
第一时间上网搜索了一下,也以为是缺少importlib-metadata这个包,通过pip命令下载安装后,问题依旧,并未解决。
再找,就找不到有用的解答了。唯一觉得可能的是,版本兼容新导致。因为按照报错提示,提示的是__init__初始化方法里缺少importlib.metadata这个名称,非常像是不同版本之间命名规则或者包引用发生变化导致。
上pygal官网,在安装帮助页面,显示“pygal is available for Python 3.6, 3.7, 3.8, 3.9 and pypy.”而笔者当时使用的的版本是python3.7.4。官网支持的呀!再去python官网查,发现最新已到3.12.2版本了。
第一感觉是,pygal难道不支持最新版python?但也不对呀,官方说明支持3.7,可现在看来也有些问题呀。再看官网https://www.pygal.org/en/stable/installing.html最下面的版权声明,copyright 2012-2016,乍以为的确久不更新。不过稍想一下,感觉这个版权声明应该是网站模板的声明,便也不去考究了。
笔者抱着大不了不行的态度,借着这个契机更新了自己的python版本,由于安装时失误,把原来的scripts下的包弄丢了,于是又重新下载安装了所需要的包。
然后在黑窗体进入python,敲入pygal,不再报错了!
到这里,就得到了一个解决办法:更新python版本。文章来源:https://www.toymoban.com/news/detail-835783.html
希望给遇到同样问题的朋友提供一个解决思路。文章来源地址https://www.toymoban.com/news/detail-835783.html
到了这里,关于python使用pygal报ModuleNotFoundError: No module named ‘importlib.metadata‘错误解决的文章就介绍完了。如果您还想了解更多内容,请在右上角搜索TOY模板网以前的文章或继续浏览下面的相关文章,希望大家以后多多支持TOY模板网!