我有一个正在开发的大型python项目,我想制作一个.exe文件来启动main.py文件。我有一个名为Ultimate_launcher.py的文件,其中包含以下代码:
exec(open("main.py").read())
这是我在Stack Overflow上找到的一种解决方案。它可以作为.py文件正常运行,但是当我使用pyinstaller将其转换为.exe时,它出现了“致命”错误,
Failed to execute script ultimate_launcher
由于我仍在开发过程中,我不希望将项目的其余部分放入.exe。 所以我的问题是如何制作仅引用文件main.py的.exe,以便在更新文件时不必重新制作.exe文件。
答案 0 :(得分:1)
我相信在此线程中有一种实现此目的的方法:
Python - create an EXE that runs code as written, not as it was when compiled
编辑: 可行
import subprocess
f = open("c:\\temp\\temp.py", "w")
f.write(open("main.py").read())
f.close()
subprocess.call("\"C:\\Program Files (x86)\\Microsoft Visual Studio\\Shared\\Python37_64\\Scripts\\pyinstaller.exe\" --distpath \"c:\\temp\" c:\\temp\\temp.py " )
subprocess.call("C:\\temp\\temp\\temp.exe")