2017-02-12 13 views
0

私はPythonとcx_Freezeでアプリケーションを作成しています。プログラム自体はすごくうまく動作しますが、セットアップスクリプトはうまく動作しません。奇妙なcx_Freezeエラー

start python.exe setup.py build 

exeファイルが作成され、私はsetup.py自体を実行すると、それはエラーになりますされていません:下記の設定スクリプトはhere--

from cx_Freeze import setup, Executable 
    import sys, cx_Freeze 

    includes = ["os", "tkinter", "shutil", "time", "random", "re"] 
    base = None 
    if sys.platform == "win64": base = "Win64GUI" 
    opts = {"include_files": ['open.bat', 'download.gif', 'mountaindew.gif', 'snipe.gif', 'Explosion.gif', 'dorito.gif', 'daoctopus.gif']} 
    exe = Executable(script = "daoctopus.py", 
       base = base) 
    excludes = [] 
    packages = [] 
    setup(name = "DA OCTOPUS", version = "4.0", 
     description = "DA OCTOPUS", author = "DA OCTOPUS Group -- ;]", 
     options={"build_exe": {"excudes": excludes, "packages": packages, "include_files": opts, "includes": includes}, 
     executables = [exe]) 

しかし、私は実行しています -

Traceback (most recent call last): 
    File "C:\Python33\Python\Workshop\Bob\Virii\DA_OCTOPUS\Essentials\setup.py", line 15, in <module> 
    executables = [exe]) 
    File "C:\Python33\Python\lib\site-packages\cx_Freeze\dist.py", line 361, in setup 
distutils.core.setup(**attrs) 
File "C:\Python33\Python\lib\distutils\core.py", line 109, in setup 
_setup_distribution = dist = klass(attrs) 
File "C:\Python33\Python\lib\site-packages\cx_Freeze\dist.py", line 23, in __init__ 
distutils.dist.Distribution.__init__(self, attrs) 
File "C:\Python33\Python\lib\distutils\dist.py", line 234, in __init__ 
for (opt, val) in cmd_options.items(): 
AttributeError: 'list' object has no attribute 'items' 

それは非常に奇妙だ、と私はそれを修正する方法を求めている...

+0

... "excudes": excludesは、あなたのメッセージではなく、コード内だけでタイプミスであると思いますがここには 'executables = [exe]'というリストがあります。 – roganjosh

答えて

0

「include_files」パラメータは、リストを期待しています。 だから、PSあなたoptsはリストに変換や

"include_files": opts["include_files"] 

を置く:私はそれが辞書を期待していますし、あなたが与えている