2016-11-18 82 views
1

我是一名python初學者,我希望對此有所幫助。我使用Ubuntu和我一直在使用蟒蛇安裝Python,但後來我試圖安裝它再次使用PIP,現在當我試圖運行我的代碼,在import numpy as np,我看到這個錯誤ImportError:undefined symbol:_PyUnicodeUCS4_IsWhitespace

ImportError: /home/dev/.local/lib/python2.7/site-packages/numpy/core/multiarray.so: undefined symbol: _PyUnicodeUCS4_IsWhitespace

我怎樣才能解決這個問題?

回答

0

只需卸載numpy的:

pip uninstall numpy 

,並重新安裝numpy的:

pip install numpy 

你可以做的另一件事是在虛擬環境中運行它:

virtualenv myproject 
cd myproject 
source bin/activate 
pip install numpy 
+0

我卸載它成功,並在'pip安裝numpy'我得到這個消息:'需求已經滿足:numpy in。/ anaconda2/lib/python2.7/site-packages'。我試過'sudo pip install numpy',我看到'Requirement already satisfied:numpy in/usr/lib/python2.7/dist-packages'。當我現在運行代碼時,我看到此錯誤** ImportError:沒有名爲numpy的模塊** – joasa

+0

似乎是Python和Numpy編譯設置的不匹配。可能是衝突。嘗試在虛擬環境中運行它。讓我添加到我的答案。 – Inconnu

+0

也在'python --version'上,我看到這個「Python 2.7.12 :: Anaconda 4.2.0(64位)'。不知道這是否有幫助 – joasa

1

我也有這個錯誤。如果你是谷歌,你會發現很多類似的問題。當你有多個Python版本時,問題就會發生。就我而言,我通過/usr/bin/python獲得了Ubuntu 16.04 Python 2.7,並通過Linuxbrew獲得了另一個Python 2.7。 type python給了我/u/zeyer/.linuxbrew/bin/python2,即Linuxbrew。 type pip2.7給了我/u/zeyer/.local/bin/pip2.7,並查看該文件,它有shebang #!/usr/bin/python,即它使用的是Ubuntu Python。

因此,有各種解決方案。您可以編輯pip2.7文件並將shebang更改爲#!/usr/bin/env python2.7。或者以某種方式重新安裝點子。

就我而言,我發現通過Linuxbrew的Python 2.7與我需要的一些軟件包(例如Tensorflow)不兼容,所以我取消了它的鏈接,現在只使用Ubuntu 16.04 Python 2.7。

相關問題