python - 如何将 .py 转换为 .exe(32 位)

标签 python python-3.x pyqt5 32-bit auto-py-to-exe

我使用 PyQt5 创建了一个应用程序,我愿意使用 auto-py-to-exe 将其转换为 32 位可执行文件 (.exe) !我对此进行了很多搜索,发现我应该为此目的使用 32 位版本的 Python(示例:[ 1 ]、[ 2 ]、[ 3 ]、[ 4 ])。因为我习惯使用 Conda 环境,所以我尝试从我喜欢的 Conda 环境(包含 PyQt5auto-py-to-exe)中克隆方式:

set CONDA_SUBDIR=win-32
conda create --name py32 --clone python3.10
conda activate py32
conda update --all

# Then I tried to run auto-py-to-exe
auto-py-to-exe

在此之后,我成功地使用 auto-py-to-exe 进行了转换。但是,当我尝试执行 .exe 文件时,我在 32 位 Windows 上仍然遇到此错误:

Picture of the error

现在我对如何实现我的目标感到有些失望。

重要问题:我为什么要使用 set CONDA_SUBDIR=win-32?因为我认为该命令可以帮助我克隆 32 位格式的所有内容并将克隆的 Python 转换为 32 位版本,这有助于我运行 auto-py-to-exe 并转换我的 .py 文件到 .exe 32 位文件。但我似乎错了,因为我无法在 32 位操作系统中运行 .exe 文件。

你能帮我如何在 Conda 环境中创建 32 位版本的 Python,然后使用 auto-py-to-exe 创建 32 位 .exe 文件? (我假设 auto-py-to-exe 也使用 Python 运行,并且 32 位版本的 Python 影响 auto-py-to-exe 结果。)


其他详细信息:
我的操作系统:64位Windows 10
但是我想在另一台拥有 32 位 Windows 10 的机器上运行 .exe 文件


更新:
由于我没有得到有关 Conda 环境的答案,我尝试安装 32 位 Python。我通过以下步骤获得了一个 32 位的 .exe 文件:

  1. 使用 this link 安装 Python 3.10.1 32 位 .
  2. 将 Python 路径添加到用户变量和系统变量: enter image description here enter image description here
  3. 然后我打开 cmd 并使用 pip 安装所需的包,例如 auto-py-to-exe(还有 .py 中使用的包) >.
  4. 在 cmd 中运行 auto-py-to-exe 并开始转换。

结果是 32 位操作系统可以执行的 32 位 .exe 文件。 但是 这并不是我想要的(它有效,但它让我安装了 32 位 Python 并将其添加到路径中,这不是我想要的)。所以我写在这里,希望有人能帮助我在 Conda 环境中完成这些。

最佳答案

不要使用 Conda 环境使用 venv 或 pipenv。由于依赖性,您无法将 conda 环境 .py 文件转换为 exe。使用 venv 时使用 pyinstaller。安装命令 - pip 安装 pyinstaller 转换命令 - pyinstaller --onefile -w 'filename.py' 使用 pipenv 时使用 auto-py-to-exe。是的,auto-py-to-exe 很旧,但没有其他工具。至于 conda,你什么也做不了。

关于python - 如何将 .py 转换为 .exe(32 位),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/71373661/

相关文章:

python - 电子邮件 "Date"标题应该是发件人的本地时间还是 UTC?

python - 动态表单生成

python - 忽略 xml.etree.ElementTree.XMLParser Python 中不匹配的标签

python - 如何从文件中读取带有字符串键和元组值的字典?

python - Pyqt5 如何避免无限循环卡住程序?

python - QLabel 文本轮廓的正确定位

python - 未解析的外部符号构建 Python 模块

python - 将随机变量传递给 agg 函数 python

python - stats.chisquare 错误地返回 p_value = 0

python - 如何在 debian stretch 中安装 pyqt5