我正在尝试使用 Cx_freeze 将我的 pygame 游戏转换为 exe;当我从脚本运行它时它工作正常,但是当我将它作为 exe 运行时,它会崩溃并显示:
Traceback (most recent call last):
File "C:\Python32\lib\site-packages\pygame\__init__.py", line 122, in <module>
try: import pygame.display
File "ExtensionLoader_pygame_display.py", line 12, in <module>
File "ExtensionLoader_pygame_surface.py", line 12, in <module>
ImportError: No module named _view
During handling of the above exception, another exception occurred:
Traceback (most recent call last):
File "C:\Python32\lib\site-packages\cx_Freeze\initscripts\Console3.py", line 2
7, in <module>
exec(code, m.__dict__)
File "Title.pyw", line 8, in <module>
File "C:\Python32\lib\site-packages\pygame\__init__.py", line 123, in <module>
except (ImportError,IOError):display=MissingModule("display", geterror(), 1)
File "C:\Python32\lib\site-packages\pygame\__init__.py", line 66, in __init__
self.warn()
File "C:\Python32\lib\site-packages\pygame\__init__.py", line 90, in warn
warnings.warn(message, RuntimeWarning, level)
File "C:\Python32\lib\warnings.py", line 18, in showwarning
file.write(formatwarning(message, category, filename, lineno, line))
File "C:\Python32\lib\warnings.py", line 25, in formatwarning
line = linecache.getline(filename, lineno) if line is None else line
File "C:\Python32\lib\linecache.py", line 15, in getline
lines = getlines(filename, module_globals)
File "C:\Python32\lib\linecache.py", line 41, in getlines
return updatecache(filename, module_globals)
File "C:\Python32\lib\linecache.py", line 127, in updatecache
lines = fp.readlines()
File "C:\Python32\lib\codecs.py", line 300, in decode
(result, consumed) = self._buffer_decode(data, self.errors, final)
UnicodeDecodeError: 'utf8' codec can't decode byte 0x90 in position 2: invalid s
tart byte
Press any key to continue . . .
有没有办法解决?Py2exe 为某些人工作,但由于我使用的是 python 3,所以我不走运。