我需要從協作者加載一組pickle數據。問題是,似乎我需要爲此進行多陣列。我的代碼如下:Python 2.7 pickle將無法識別numpy multiarray
f = open('data.p', 'rb')
a = pickle.load(f)
這裏是錯誤消息。
ImportError Traceback (most recent call last)
<ipython-input-3-17918c47ae2d> in <module>()
----> 1 a = pk.load(f)
/usr/lib/python2.7/pickle.pyc in load(file)
1382
1383 def load(file):
-> 1384 return Unpickler(file).load()
1385
1386 def loads(str):
/usr/lib/python2.7/pickle.pyc in load(self)
862 while 1:
863 key = read(1)
--> 864 dispatch[key](self)
865 except _Stop, stopinst:
866 return stopinst.value
/usr/lib/python2.7/pickle.pyc in load_global(self)
1094 module = self.readline()[:-1]
1095 name = self.readline()[:-1]
-> 1096 klass = self.find_class(module, name)
1097 self.append(klass)
1098 dispatch[GLOBAL] = load_global
/usr/lib/python2.7/pickle.pyc in find_class(self, module, name)
1128 def find_class(self, module, name):
1129 # Subclasses may override this
-> 1130 __import__(module)
1131 mod = sys.modules[module]
1132 klass = getattr(mod, name)
ImportError: No module named multiarray
我認爲這是我的電腦編譯numpy的問題。所以,我從我的Arch Linux回購卸載numpy的,並通過
sudo -H pip2 install numpy
然而,問題仍然存在安裝numpy的。我已經檢查了文件夾$PACKAGE-SITE/numpy/core
,multiarray.so
就在裏面。我不知道爲什麼鹹菜不能加載模塊。
我該如何解決問題?我還需要做什麼?
PS1。我正在使用Arch Linux。並從去年10月開始嘗試所有版本的Python 2.7。它們都不起作用。 PS2。由於問題出在裝載步驟。我懷疑這個問題更可能來自Python的內部衝突,而不是來自數據文件。
你可以'''numpy'進口numpy'你unickickling從?什麼是'numpy .__ version__'? –
你知道它是用「wb''模式還是'w''寫的?如果泡菜是用「w」模式寫的,你可以看到這個'ImportError',特別是當泡菜來自Windows盒子時。 –
@MikeMcKerns我會問他們的。但是如果他們使用''w'',我能做些什麼來使它在我的機器上可讀?像改變退貨的象徵? – Chong