如果我尝试编译我的python(使用python 3.2)文件,则会发生以下错误:
Traceback(most recent call last):
File
"c:\python32\lib\site-packages\cx_Freeze\initscripts\Console3.py", line
27, in <module>
exec(code, m.__dict__)
File "Abertura.py", line 208, in <module>
File "Abertura.py", line 154, in main
File "Abertura.py", line 9, in __init__
pygame.error: Couldn't open
C:\Python32\build\exe.win32-3.2\library.zip\Imagens\menu1.png
我已经包含pygame._view并尝试将'Imagens'目录复制到library.zip文件,但它不起作用。我正在使用来自其他目录的图像,音乐和视频,包括在我的代码中:
def file_path(filename, directory):
return os.path.join(
os.path.dirname(os.path.abspath(__file__)),
directory,
filename
)
这是我的setup.py文件:
from cx_Freeze import setup, Executable
exe=Executable(
script="Abertura.py",
base="Win32Gui",
)
includefiles=[('C:\Python32\Imagens', 'Imagens'),
('C:\Python32\Musicas','Musicas'),
('C:\Python32\Videos','Videos')
]
includes=[]
excludes=[]
packages=[]
setup(
version = "1.0",
description = "RPG",
author = "Pedro Forli e Ivan Veronezzi",
name = "Batalha Inapropriada",
options = {'build_exe': {'excludes':excludes,'packages':packages,'include_files':includefiles}},
executables = [exe]
)
我该如何解决? (对我可能的英语错误感到抱歉)
答案 0 :(得分:0)
在您访问压缩存档之前,从压缩存档(例如zips,rars,tar.gzs等)中访问的任何内容都需要先解压缩。
如果说,你不应该把你的追索文件放在拉链中,因为每次想要访问某些东西时解压缩都是缓慢而困难的。 您的资源文件应位于普通目录中,而不是存档。
您之所以收到此错误的原因是因为它正在查找名为library.zip
的文件夹但由于library.zip
不是文件夹而找不到该文件夹,它是一个文件。
我如何建议解决此错误的方法是将所有内容解压缩到名为library
的文件夹中,并将library.zip
存在的任何位置的代码更改为library
。