我試圖用condas來安裝使用Python 2.7和numpy的版本1.10暢達蟒蛇沒有使用numpy的版本,我嘗試安裝,如果我還指定它應該使用Python 2
我嘗試的環境創造這樣的環境
conda create -n test2 python=2.7 numpy=1.10
它辯稱這是要安裝我指定
下列新軟件包將被安裝的軟件:
mkl: 11.3.3-0 numpy: 1.10.4-py27_2 openssl: 1.0.2l-0 pip: 9.0.1-py27_1 python: 2.7.13-0 readline: 6.2-2 setuptools: 27.2.0-py27_0 sqlite: 3.13.0-0 tk: 8.5.18-0 wheel: 0.29.0-py27_0 zlib: 1.2.8-3
,然後激活並運行蟒蛇
source activate test2
python
它會通知我,我用Python版本2.7.13,然後我嘗試檢查numpy的版本號
import numpy
numpy.version.version
它告訴我我有版本
'1.13.0'
這不是我指定的版本。另一方面,如果我跳過指定python版本,它會安裝python 3,但正確版本的numpy(1.10.4)
有關這裏發生了什麼的任何想法?此外,我該如何解決這個問題?謝謝!
編輯:按UVAR的評論
conda create -n test4 python=2.7 numpy=1.10 --no-deps
告訴我
下列新軟件包將被安裝:
numpy: 1.10.4-py27_2 python: 2.7.13-0
但當時如果我source activate test4
和檢查numpy版本號,它告訴我我再次運行1.13.0。
編輯2(再次響應由UVAR查詢):
conda list -n test2
回報
#在/家庭包在環境/ ohnoplus/anaconda3/ENVS /測試2:
#
mkl 11.3.3 0 numpy 1.10.4 py27_2 openssl 1.0.2l 0 pip 9.0.1 py27_1 python 2.7.13 0 readline 6.2 2 setuptools 27.2.0 py27_0 sqlite 3.13.0 0 tk 8.5.18 0 wheel 0.29.0 py27_0 zlib 1.2.8 3
編輯3: 如果我source activate test2
然後蟒蛇import numpy
和numpy.__file__
裏面我得到以下
「/home/ohnoplus/.local/lib/python2.7/site-packages/numpy/__init__。PYC」
同時,如果蟒蛇之外,但是test2的裏面,我echo $PATH
我得到
/家庭/ ohnoplus/anaconda3/ENVS/test2的/ bin中:/首頁/ ohnoplus /anaconda3/bin:/home/ohnoplus/bin:/home/ohnoplus/.local/bin:/usr/local/sbin:/usr/local/bin:/usr/sbin:/usr/bin:/sbin:/ bin:/ usr/games:/ usr/local/games:/ snap/bin
編輯4: @Uvar和@MSeifert指出我應該讓我的路徑變量指向正確的位置。我會實驗得到這個權利,但我有幾個問題:
我發現,如果我看sys.paths在test2的蟒蛇sys.path中似乎找對了地方numpy的
import sys
print (sys.path)
[ '', '/home/ohnoplus/anaconda3/envs/test2/lib/python27.zip', '/home/ohnoplus/anaconda3/envs/test2/lib/python2.7', '/home/ohnoplus/anaconda3/envs/test2/lib/python2.7/plat-linux2','/home/ohnoplus/anaconda3/envs/test2/lib/python2.7/lib-tk','/ home/ohnoplus/anaconda3/envs/test2/lib/python2.7/lib-old','/home/ohnoplus/anaconda3/envs/test2/lib/python2.7/lib-dynload ','/home/ohnoplus/.local/lib/python2.7/site-packages','/home/ohnoplus/anaconda3/envs/test2/lib/python2.7/site-packages','/ home/ohnoplus /anaconda3/envs/test2/lib/python2.7/site-packages/setuptools-27.2.0-py2.7.egg']
我應該在命令中引用來更新$ PATH行,這個sys.path變量,還是別的?
您正在運行'source activate'或'source activate test2'嗎?如果您正在運行前者,則切換到'root' env,而不是您剛剛創建的那個。 – JoshAdel
對不起。這是一個錯誤的類型在stackoverflow。我在我的系統上運行了'source activate test2'來獲取所描述的行爲。 – ohnoplus
所以,如果我遵循完全相同的步驟,對我來說沒有問題。然後再次,我有一個Windows安裝。從正在安裝的軟件包中,我可以看到您可能擁有OSX?有可能你的root python安裝是干擾的。你可以用'--no-deps'標誌來試試嗎? – Uvar