2016-07-01 2 views
0

私は長い間、pythonとpipでいくつかの問題に遭遇しました。今これは私を悩ます:python3 -m pip show scipyVersion: 0.17.1を返すが、python3import scipyのPythonインタプリタを起動すると、scipy.__version__0.13.3を返す。そして、明らかに私はいくつかのスクリプトを実行すると、私はこのバージョン関連の問題があります:Pythonインタプリタとpipは異なるバージョンのモジュールを提供します

ImportError: No module named 'scipy.lib.decorator' 

私は何ができますか?多くのありがとう

+0

私はすでにpython3 -m pip install -upgrade scipyを試しましたが、scipyが見たバージョンはすでに最新のものなので何も変更しませんでした。 –

答えて

0

scipyの2つのバージョンがインストールされているように聞こえ、sys.pathが最初に古いバージョンを見つけています。 python3インタプリタタイプで:

>>> import scipy 
>>> scipy.__version__ 
'0.18.0.dev0+4a89f2d' 
>>> scipy.__file__ 
'/home/unutbu/.virtualenvs/muffy/lib/python3.4/site-packages/scipy/__init__.py' 

最後の行が読み込まれscipyのダウンロードパッケージが見つかったディレクトリを示します。上記 、ディレクトリ

/home/unutbu/.virtualenvs/muffy/lib/python3.4/site-packages/ 

は、scipyのダウンロードの0.13と0.17バージョンの両方のためにあなたのマシン上の同等のディレクトリを確認しています。両方が存在し、scipyディレクトリの0.13バージョンは必要ないと判断した場合は、先に進んで削除してください。 0.13バージョンがパッケージマネージャによってインストールされている場合は、パッケージマネージャがシステムの状態を最新の状態に保つように、同じパッケージマネージャを使用して削除してください。

+0

トリック、ありがとう!私は '/ usr/lib/python3.4 /'にバージョンを、 '/ usr/local/lib/dist-packages /'にpipバージョンを持っていました。私は最初のものを削除し、すべてが働いた。 –

+0

私は誤って両方のバージョンが手動でインストールされていると仮定していました。 パッケージマネージャ( 'apt-get'や' yum'など)によって '/ usr/lib'のscipyのバージョンがインストールされている場合は、パッケージマネージャを使って' scipy'を ' usr/lib'となります。例えば、Ubuntuでは 'sudo apt-get python3-scipy'を使用します。これにより、パッケージマネージャはパッケージの状態を最新の状態に保ちます。 – unutbu

関連する問題