python_matplotlib cannot import name _thread on mac
最后的2行错误信息是
from six.moves import _thread
ImportError: cannot import name _thread
- 1
- 2
发现是six出现了问题,用pip更新一下six,问题并没有解决,原因是并没有真正更新six的文件。
在python下输入:
import six
print six.__file__
- 1
- 2
/System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six.pyc
这是我们的python实际使用的six,而我们手动更新的six却是装在/Library/Python/2.7/site-packages/,我们把six.__file__的文件删除掉,python就只能用我们更新的six了
sudo rm -rf /System/Library/Frameworks/Python.framework/Versions/2.7/Extras/lib/python/six.*
- 1
重启ipython/python就行了,如果之前并未有更新six, 应该在这一步中更新six。
sudo pip install --upgrade six
- 1
另外,在很多时候我们希望忽略过去下载的安装包,直接下载安装可以使用–ignore-installed这个参数,比如我发现的的matplotlib的mplot3d部分有点问题,我想再重新下载安装一遍,可以这么做
sudo pip install --upgrade --ignore-installed matplotlib
- 1
这会把相关的包(numpy, pytz, six, python-dateutil, cycler, pyparsing, matplotlib)都下载安装一遍
转载: http://blog.csdn.net/q1w2e3r4470/article/details/50775184
create by cphmvp
email:cphmvp@163.com
爬虫技术交流_crawler QQ群 :167047843