问题描述
我想为位于 C:\Python\Scripts 的名为 ZCasinoinsulte.py 的文件创建一个 .exe 文件。而且,每次我执行 cxfreeze ZCasinoinsulte.py 时,它都不起作用,并告诉我它在 cxfreeze.exe 中找不到 _main_.py。
规格:我在 Windows 10 64 位上安装了 python 3.9.1。
我已经用 whl 安装了 cx_Freeze-6.5.1。
它确实创建了一个 exe 文件,但它会立即打开和关闭(即使我将 os.system("pause") 放在 ZCasinoinsulte.py 中)。
old code
任何帮助将不胜感激:D
编辑:我使用了 cxfreeze 6.4.2 版,代码运行得更好,没有错误。 但是只要我点击它,exe文件就会关闭。 这是我的 pip 列表回溯:
C:\Users\Hmili>pip list
Package Version
------------------ -------
cx-Freeze 6.4.2
importlib-Metadata 3.4.0
pip 20.3.3
setuptools 49.2.1
zipp 3.4.0
这是我从 cmd 执行 exe 文件时的回溯:
C:\Python\Mes fichiers python\dist>ZCasinoinsulte.exe
Traceback (most recent call last):
File "c:\python\lib\site-packages\cx_Freeze\initscripts\__startup__.py",line 41,in run
module.run()
File "c:\python\lib\site-packages\cx_Freeze\initscripts\Console.py",line 36,in run
exec(code,m.__dict__)
File "ZCasinoinsulte.py",line 3,in <module>
File "c:\python\lib\site-packages\cx_Freeze\__init__.py",line 1,in <module>
import setuptools
File "c:\python\lib\site-packages\setuptools\__init__.py",line 24,in <module>
from setuptools.depends import Require
File "c:\python\lib\site-packages\setuptools\depends.py",line 6,in <module>
from .py33compat import Bytecode
File "c:\python\lib\site-packages\setuptools\py33compat.py",line 11,in <module>
from setuptools.extern.six.moves import html_parser
File "c:\python\lib\site-packages\setuptools\_vendor\six.py",line 92,in __get__
result = self._resolve()
File "c:\python\lib\site-packages\setuptools\_vendor\six.py",line 115,in _resolve
return _import_module(self.mod)
File "c:\python\lib\site-packages\setuptools\_vendor\six.py",line 82,in _import_module
__import__(name)
ModuleNotFoundError: No module named 'html.parser'
这是 ZCasinoinsulte.py 的前十行:
# -*-coding:Latin-1 -*
import os,time
from cx_Freeze import setup,Executable
from random import randrange
argent=3000
while argent>0:
condition1=0
condition2=0
argent=int(argent)
我该如何解决这个问题? (顺便感谢您的帮助:))
解决方法
我将 cx_Freeze 恢复到 6.4.2 版,之后似乎可以正常编译
pip install --upgrade cx-Freeze==6.4.2
好像是bug什么的。
,首先,我按照 James Mackey 的建议降级了 pip。代码运行正常并创建了一个 exe 文件。所以第一个问题是兼容性问题。
此外,创建的 exe 文件在执行时立即崩溃。从使用cmd执行ZCasinoinsulte.exe的回溯来看,James Mackey认为ZCasinoinsulte.py的第三行有一个与之相关的错误。
ZCasinoinsulte.py 的第三行是:
from cx_Freeze import setup,Executable
我删除了这一行,因为它与实际代码无关。
我打开 cmd 并再次执行命令:cxfreeze ZCasinoinsulte.py
。 exe 文件现在可以正常运行。