我想導入與numpy打包的zip文件。python導入錯誤與郵編
我已經壓縮成packages.zip
numpy。但是,在使用zip文件時,我收到以下導入錯誤。
> python
Python 2.7.9 (default, Jan 7 2015, 11:49:12)
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.56)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import sys
>>> sys.path.insert(0, 'packages.zip')
>>> import numpy
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
File "packages.zip/numpy/__init__.py", line 180, in <module>
File "packages.zip/numpy/add_newdocs.py", line 13, in <module>
File "packages.zip/numpy/lib/__init__.py", line 8, in <module>
File "packages.zip/numpy/lib/type_check.py", line 11, in <module>
File "packages.zip/numpy/core/__init__.py", line 14, in <module>
ImportError: cannot import name multiarray
>>>
檢查numpy的/核心我發現__init__.py
後試圖導入multiarray.so
文件。
如何解決此錯誤?謝謝
你是如何構建.zip文件的?操作系統不會從.zip文件中讀取'.so'文件,因此您不能只壓縮numpy目錄。 Setuptools有一個'bdist_egg'命令,通過生成存根.py文件來處理庫,這些文件將.so文件提取到操作系統可以使用它們的磁盤。 – tdelaney
'pip install -r requirements.txt --target。/ packages' 'cd packages' 'find。 -name「* .pyc」-delete「查找。 -name「* .egg-info」| xargs rm -rf' 'zip -9mrv packages.zip' – Vinay
@tdelaney你能詳細解釋一下嗎?我需要在map-reduce環境中使用此zip。 – Vinay