簡體   English   中英

Anaconda中的不同numpy版本和IPython Shell中的numpy .__ version__

[英]Different numpy version in Anaconda and numpy.__version__ in IPython Shell

我曾經使用過如何檢查我正在使用的NumPy版本? 了解如何獲取numpy的版本。 但是,當我運行conda list | grep numpy conda list | grep numpy ,我得到:

numpy                     1.15.2           py36ha559c80_0
numpy-base                1.15.2           py36h8128ebf_0
numpydoc                  0.8.0                    py36_0

但是,當我從IPython Shell運行版本時,我得到:

import numpy as np
np.__version__
Out: '1.13.3'
np.version.version
Out: '1.13.3'
np.version.full_version
Out: '1.13.3'

為什么兩個版本不同? 我應該信任哪一個? 謝謝你的幫助。


請注意,我沒有使用venv (即虛擬環境)。 我直接在訪問Anaconda的軟件包。 因此,關於版本控制沒有問題。


這是PyCharm向我展示的內容: 在此處輸入圖片說明


根據Conda的版本信息,包中的信息與__version__不對應 ,這里是__file__sys.path 請注意,由於隱私問題,我已經隱藏了我的名字。 在此處輸入圖片說明

似乎除了anaconda python 3環境外,還安裝了IPythonnumpy另一個python

看起來PyCharm和Anaconda可以看到(正確地)相同的numpy版本,而我假設您不是從anaconda環境中開始的IPython可以看到另一個使用較舊numpy python安裝。 實際上,您的輸出顯示, C:\\Users\\...中還有另一個python3.6 ,它不屬於anaconda

為了使numpy 1.15IPython可用,您可以通過在終端中鍵入終端(更簡便的解決方案)從anaconda環境中啟動IPython

C:\>activate <your_anaconda_environment_name>
(<your_anaconda_environment_name>) C:\>ipython

或者您可以通過查看此答案使本地IPythonanaconda環境中加載模塊。 考慮到兩個python安裝的最終交叉鏈接,在這種情況下,不建議使用此選項。

問題是PyCharm從位置App-data\\roaming...讀取了較舊的python版本App-data\\roaming...我所做的是在啟動腳本中添加了以下代碼。

print("Correcting sys paths now...")
paths = [
'C:\\Anaconda3\\python36.zip',
 'C:\\Anaconda3\\DLLs',
 'C:\\Anaconda3\\lib',
 'C:\\Anaconda3',
 'C:\\Anaconda3\\lib\\site-packages',
 'C:\\Anaconda3\\lib\\site-packages\\win32',
 'C:\\Anaconda3\\lib\\site-packages\\win32\\lib',
 'C:\\Anaconda3\\lib\\site-packages\\Pythonwin',
 'C:\\Anaconda3\\lib\\site-packages\\IPython\\extensions',
]
import sys
for path in reversed(paths):
    sys.path.insert(0,path)
print("Completed correcting sys paths now...")
del path
del paths

上面的代碼將強制Python從Anaconda讀取最新文件。 但是,如果您使用的是虛擬環境,則需要指向該環境。

如果您想知道Python的安裝位置,可以運行:

import os
import sys
os.path.dirname(sys.executable)

上面的答案是受conda啟發的python沒有使用我嘗試安裝的numpy版本,如果我還指定它應該使用python 2的話 它沒有提供解決方案。 我已經在上面發布了一個解決方案。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM