我正在尝试使用 cx_Freeze 卡住 Python 脚本。该脚本使用了 pandas。当我运行 cx_Freeze 创建的可执行文件时,我得到以下回溯:
[...]
File "C:\Python27\lib\site-packages\pandas\__init__.py", line 6, in <module>
from . import hashtable, tslib, lib
File "ExtensionLoader_pandas_hashtable.py", line 11, in <module>
File "numpy.pxd", line 156, in init pandas.hashtable (pandas\hashtable.c:20273)
File "C:\Python27\lib\site-packages\numpy\__init__.py", line 147, in <module>
from core import *
AttributeError: 'module' object has no attribute 'sys'
我使用(用于测试)的唯一 pandas 代码是:
from pandas import DataFrame
import pandas as pd
d = {'one' : [1., 2., 3., 4.],
'two' : [4., 3., 2., 1.]}
df = DataFrame(d)
当我尝试在 cx_Freeze 设置文件的“packages”下包含“pandas”时,它在卡住过程中失败:
ValueError: too many values to unpack
我在 Windows7(64 位)上的 32 位和 64 位版本的 Python 2.7.3 中遇到了同样的问题。 pandas 版本是 0.10.1,cx_Freeze 是 4.3.1。
各位pandas或者cx_Freeze大神有什么想法吗?
最佳答案
我刚刚查看了/numpy/core/init.py 并注意到倒数第二行:
有“del sys”
如果你注释掉这一行,它就会按预期工作。我还注意到 numpy 1.6.2 中没有“del sys”
您可以尝试联系 numpy 以检查他们为什么需要这样做。
关于python - 使用 cx_Freeze 卡住 pandas/NumPy 1.7.0 代码时出错,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/14969552/