app.py我有一个包含和文件的 python 项目source.py。项目还有其他配置和日志文件。我已经转换app.py为app.exe使用pyinstallerpyinstaller app.py这样就创建了一个dist目录。source.py我已将配置和日志文件复制粘贴到dist目录中。我还想为此创建一个安装程序,将其安装在另一台计算机上。source.py我无法按原样共享该文件,而不是.py我使用过的source.pyc。我现在已经使用了 inno 编译器并创建了一个安装文件。根据我的理解,pyinstaller会自动绑定python解释器,因此我们不需要在任何其他机器上安装python。我只是安装了 exe,它就开始正常工作了。在我的项目中,我有一个调用source.pyc文件的功能,如下所示:exec(os.system("source.pyc install"))这在我的开发机器上运行良好,但在其他机器上,它给了我bad magic error。根据在线论坛,当我们尝试使用pyc不同的 python 版本解释器运行文件时,通常会发生这种情况,但在我的情况下,我使用相同的 pyinstaller 解释器。那怎么会出现这个错误呢。除了使用 pyinstaller 编译 app.py 之外,还有其他方法吗?我怎样才能消除这个错误。谢谢
1 回答
婷婷同学_
TA贡献1844条经验 获得超8个赞
PyInstaller 不会将 Python 解释器与 EXE 文件捆绑或绑定。EXE 文件是编译后的二进制文件,在编译时不需要解释器。PYC 文件仍然需要解释器。
您也可以使用 PyInstaller 编译其他文件(即source.py
),然后将编译后的 EXE 文件移动到与app.exe
. 在这种情况下,您将能够import os; os.system("source.exe")
从主程序运行您的命令。如果您的其他编译脚本需要未在app.exe
编译中使用/包含的模块/库,则在移动已编译的 时source.exe
,您还需要将捆绑的库移动到该app.exe
目录。
添加回答
举报
0/150
提交
取消