2017-02-06 21 views
1

私は/opt/lib/python2.7/site-packagesの下にnumpyの新しいバージョンを、/usr/lib/python2.7/dist-packagesの下に標準(システム)のバージョンを持っています。私は、私は私のスクリプトの先頭に以下を追加し、一時的に新しいnumpyのバージョンを使用したい:sys.pathを変更するpythonが機能しません

In [1]: import sys 

In [2]: sys.path.insert(1,'/opt/numpy/lib/python2.7/site-packages') 

In [3]: sys.path 
Out[3]: 
['', 
'/opt/numpy/lib/python2.7/site-packages', 
'/usr/local/bin', 
'/usr/lib/python2.7/dist-packages', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-x86_64-linux-gnu', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload', 
'/usr/local/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages/PILcompat', 
'/usr/lib/python2.7/dist-packages/gtk-2.0', 
'/usr/lib/pymodules/python2.7', 
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client', 
'/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode', 
'/usr/lib/python2.7/dist-packages/IPython/extensions'] 

は奇妙に、それはまだ古いnumpyのバージョンロード:

In [4]: import numpy as np 

In [5]: np.__file__ 
Out[5]: '/usr/lib/python2.7/dist-packages/numpy/__init__.pyc' 

を誰でもについてどんな考えを持っていますこの?

注1:この質問は、Pythonのsys.pathに関するものです。 virtualenvの使用やPYTHONPATHの変更はお勧めしません。

注2:次のファイルがどうやら私はそれを動作させるためにのsys.pathにnumpyの.eggファイルを追加する必要が私の新しいnumpyのディレクトリの下に

$ ls /opt/numpy/lib/python2.7/site-packages 
easy-install.pth numpy-1.11.0-py2.7-linux-x86_64.egg __pycache__ site.py site.pyc 
+0

は* "私はvirtualenvの使用することをお勧めしないでください" * - なぜありませんか?これは一般的に、特定のバージョンの要件で開発環境を管理する最も簡単な方法です。 – jonrsharpe

+0

アナコンダのノートブックまたはIDEはどのような環境で使用していますか? –

+0

@DeepakMそれぞれ '/ usr/bin/python'と'/usr/local/bin/ipython'の下にpythonとipythonです。 –

答えて

0

を発見されました。

In [1]: import sys 

In [2]: sys.path.insert(1,'/opt/numpy/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg') 

In [3]: sys.path 
Out[3]: 
['', 
'/opt/numpy/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg', 
'/usr/local/bin', 
'/usr/lib/python2.7/dist-packages', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-x86_64-linux-gnu', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload', 
'/usr/local/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages/PILcompat', 
'/usr/lib/python2.7/dist-packages/gtk-2.0', 
'/usr/lib/pymodules/python2.7', 
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client', 
'/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode', 
'/usr/lib/python2.7/dist-packages/IPython/extensions'] 

In [4]: import numpy as np 

In [5]: np.__file__ 
Out[5]: '/opt/numpy/lib/python2.7/site-packages/numpy-1.11.0-py2.7-linux-x86_64.egg/numpy/__init__.pyc' 

私だけのsite-packagesを追加した場合、それは動作しません:

In [1]: import sys 

In [2]: sys.path.insert(1,'/opt/numpy/lib/python2.7/site-packages') 

In [3]: sys.path 
Out[3]: 
['', 
'/opt/numpy/lib/python2.7/site-packages', 
'/usr/local/bin', 
'/usr/lib/python2.7/dist-packages', 
'/usr/lib/python2.7', 
'/usr/lib/python2.7/plat-x86_64-linux-gnu', 
'/usr/lib/python2.7/lib-tk', 
'/usr/lib/python2.7/lib-old', 
'/usr/lib/python2.7/lib-dynload', 
'/usr/local/lib/python2.7/dist-packages', 
'/usr/lib/python2.7/dist-packages/PILcompat', 
'/usr/lib/python2.7/dist-packages/gtk-2.0', 
'/usr/lib/pymodules/python2.7', 
'/usr/lib/python2.7/dist-packages/ubuntu-sso-client', 
'/usr/lib/python2.7/dist-packages/wx-2.8-gtk2-unicode', 
'/usr/lib/python2.7/dist-packages/IPython/extensions'] 

In [4]: import numpy as np 

In [5]: np.__file__ 
Out[5]: '/usr/lib/python2.7/dist-packages/numpy/__init__.pyc' 
関連する問題