anacondaでnumpy呼ぶ時に、ImportError: No module named libを食らう

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

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です