2

cx_Freezeを使用してPythonスクリプトをフリーズしようとしています。スクリプトはパンダを利用します。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'

私が(テスト用に)使用しているパンダコードは次のとおりです。

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ビット)上のPython2.7.3の32ビットバージョンと64ビットバージョンで同じ問題が発生しました。pandasのバージョンは0.10.1で、cx_Freezeは4.3.1です。

パンダやcx_Freezeの神々の誰かがアイデアを持っていますか?

4

2 に答える 2

5

/ numpy / core / init .pyを見て、最後から2番目の行に気づきました。

「delsys」があります

この行をコメントアウトすると、期待どおりに機能します。また、numpy1.6.2には「delsys」がないことに気づきました。

numpyに連絡して、なぜこれを行う必要があるのか​​を確認してみてください。

于 2013-02-24T07:57:31.120 に答える
0

両方のエラーの理由はそうですNumPy 1.7.0(パンダはNumPyに基づいています)。を使用してコードを実行するとNumPy 1.6.2、すべてが機能します。

于 2013-02-20T22:05:57.547 に答える