私は、Scipyなどのライブラリを扱うためにWinPythonを使用しています。私はblas/lapackが利用できないので、私の仮想環境の中にそれらをインストールすることはできません。解決策は、自分の仮想環境内にすでにインストールされているモジュール(theano/scipy/numpy)を使用することでした。ここ は、私が試したものです:VirtualEnvでグローバルモジュールを利用できません
オープンコンソール(CMD)
python
>>> import numpy
これは今、仮想環境
set VIRTUALENV_PYTHON=C:\WinPython-64bit-3.5.1.1\python-3.5.1.amd64\python.exe
set VIRTUALENV_EXTRA_SEARCH_DIR="C:\WinPython-64bit-3.5.1.1\python-3.5.1.amd64\libs C:\WinPython-64bit-3.5.1.1\python-3.5.1.amd64\Lib C:\WinPython-64bit-3.5.1.1\python-3.5.1.amd64\DLLs C:\WinPython-64bit-3.5.1.1\python-3.5.1.amd64\ C:\WinPython-64bit-3.5.1.1\python-3.5.1.amd64\Scripts"
virtualenv --system-site-packages -v --always-copy venv
または単に作成し、動作します:
virtualenv --system-site-packages venv
しかし、誰を私が試したことは問題です。私はvenvに入るときにnumpyをインポートすることはできません。
venv\Scripts\activate
python
>>> import numpy
ImportError: No module named 'numpy'
Strange。 (外)オリジナルのものと
>>> sys.path
['', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\Scripts', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\DLLs', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\Lib', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\libs', 'C:\\Users\\user\\venv\\Scripts\\python35.zip', 'C:\\Users\\user\\venv\\DLLs', 'C:\\Users\\user\\venv\\lib', 'C:\\Users\\user\\venv\\Scripts', 'C:\\Users\\user\\venv', 'C:\\Users\\user\\venv\\lib\\site-pack
ages']
:
>>> sys.path
['', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\Scripts', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\DLLs', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\Lib', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\libs', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\python35.zip', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\lib\\site-packages', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\lib\\site-packages\\win32', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\lib\\site-packages\\win32\\lib', 'C:\\WinPython-64bit-3.5.1.1\\python-3.5.1.amd64\\lib\\site-packages\\Pythonwin']
あなたが見ることができるように、すべてのエントリがコピーされてしまったではないので、私はvenv内部のsys.pathを比較しました。それはなぜですか、どうすれば修正できますか?
はい、私はvirtualenv --system-site-packages not using system site packagesを読み、私のPYTHONPATH変数を削除しましたが、問題は残ります。