我无法在OS X上导入mpl_toolkits
,这显然是由于软件包目录(__init__.py
)中缺少/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/mpl_toolkits
文件。
$ python -c 'import mpl_toolkits'
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named mpl_toolkits
$ ls /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/mpl_toolkits
axes_grid axes_grid1 axisartist exceltools.py exceltools.pyc gtktools.py gtktools.pyc mplot3d
子包mplot3d
确实有一个__init.py__
,但也不能导入:
$ ls /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/mpl_toolkits/mplot3d/
__init__.py __init__.pyc art3d.py art3d.pyc axes3d.py axes3d.pyc axis3d.py axis3d.pyc proj3d.py proj3d.pyc
$ python -c 'from mpl_toolkits.mplot3d import axes3d'
Traceback (most recent call last):
File "<string>", line 1, in <module>
ImportError: No module named mpl_toolkits.mplot3d
自OS X 10.11起,即使root也缺乏/System
中的写入权限。我知道人们可以通过执行csrutil disable
进入恢复模式并禁用系统完整性保护,这将允许创建丢失的__init.py__
文件。但是,有没有更简单的方法让python知道此软件包?
答案 0 :(得分:3)
问题在于您仍在使用Python2。Matplotlib不久前就放弃了对Python 2的支持。 Python开发团队本身将在一周内(从2020年开始)放弃所有Python 2支持。您至少需要Python 3.6才能运行最新的Matplotlib。