我在 python 中遇到 Pyinstaller 问题

I have problem with Pyinstaller in python

我有一个问题,如果我使用 Pyinstaller 将 python 文件转换为 exe 是否会转换模块? ,因为我有包含很多模块的 python 文件,我想转换它我能做的并避免这个问题, 谢谢你

    import requests

错误:

    ImportError: No module named requests

.

在评论中进行讨论后,基本上错误是在您尝试在另一台计算机上打开生成的文件时发生的,但是您没有使用任何虚拟环境,因此您可以安装要求并尝试再次重建但是您想要独立的 exe 文件。

为此用途:

   pyinstaller --onefile your-script.py 


   # or pyinstaller -F your-script.py 
   
   ## this should generate a stand alone executable file located in the dist folder.

关于您对 pyinstaller 如何工作的疑虑

pyinstaller 在构建时是否复制模块?

答案很简单:,如文档中所述 here PyInstaller 读取您编写的 Python 脚本。它分析您的代码以发现您的脚本执行所需的所有其他模块和库。然后它收集所有这些文件的副本——包括活动的 Python 解释器! – 并将它们与您的脚本放在一个文件夹中,或者可以选择放在一个可执行文件中。

然而,Python和第三方库的变体是无穷无尽且不可预测的,如果出现问题,您可以通过阅读本文了解如何解决这些问题文档页面 here

要生成什么?

你可以阅读更多here

  1. 创建一个包含可执行文件的单文件夹包(默认),-D, --onedir

  2. 创建一个单文件捆绑可执行文件。你需要使用 -F ore --onefile

终于

我强烈建议您为每个项目使用单独的虚拟环境。