anaconda3-x.x.x使用時、python2.7に落とす必要が出たので以下の記事を参考にしてpython2環境を作った。その時に起きたnumpyエラーについて。
Anaconda3を入れた後,python2.7を使いたくなった時の環境構築法
現象
anacondaとpyenv使用時、python2環境でnumpyのインポートが出来なくなる。
エラーは以下の通り。
$ python Python 2.7.14 |Anaconda, Inc.| (default, Dec 7 2017, 17:05:42) [GCC 7.2.0] on linux2 Type "help", "copyright", "credits" or "license" for more information. >>> import numpy Traceback (most recent call last): File "<stdin>", line 1, in <module> File "/home/XXX/.local/lib/python2.7/site-packages/numpy/__init__.py", line 142, in <module> File "/home/XXX/.local/lib/python2.7/site-packages/numpy/add_newdocs.py", line 13, in <module> ImportError: No module named lib
試したこと
・anaconda2にしてみる
・pyenvの更新
正解
$ pip uninstall numpy
原因
よく分からないんだけど、pip installで入れたnumpyが壊れてたっぽい?
anaconda3の時に何かの拍子でpip install numpyして、それを持ったままpython2に落としたのが原因だと思う。
numpyはanacondaに標準装備なので、pip uninstall numpyしても大丈夫らしい。
uninstallしたあとにpip installしようとしても、すでに持ってるよって言われる。
$ pip install numpy --user Requirement already satisfied: numpy in /home/XXX/.pyenv/versions/anaconda3-5.1.0/envs/py27/lib/python2.7/site-packages
以上です。
追記:
この問題について,以下のエントリで触れられていた.
condaとpip:混ぜるな危険 – onoz000’s blog