如何将我的Python应用转换为.exe
?我用tkinter
创建了一个程序,并想知道如何让其他人使用它。我使用Python 3.3。我搜索了一下但找不到任何东西。
答案 0 :(得分:15)
cx_Freeze执行此操作但创建了一个包含大量依赖项的文件夹。 py2exe现在执行此操作,使用--bundle-files 0选项,只创建一个EXE,这可能是您问题的最佳解决方案。
更新:在遇到py2exe遇到“查找”问题的第三方模块后,我已经转移到pyinstaller,因为kotlet schabowy建议如下。两者都有足够的文档,并且包含.exes,你可以使用命令行参数运行,但我还没有编译一个pyinstaller无法处理而没有调试或头疼的脚本。
这是一个简单的便利函数,我用它来构建一个.exe,我的默认值来自解释器(当然批量或类似的也可以):
import subprocess,os
def exe(pyfile,dest="",creator=r"C:\Python34\Scripts\pyinstaller.exe",ico=r"C:\my icons\favicon.ico",noconsole=False):
insert=""
if dest: insert+='--distpath ""'.format(dest)
else: insert+='--distpath "" '.format(os.path.split(pyfile)[0])
if ico: insert+=' --icon="{}" '.format(ico)
if noconsole: insert+=' --noconsole '
runstring='"{creator}" "{pyfile}" {insert} -F'.format(**locals())
subprocess.check_output(runstring)
答案 1 :(得分:9)
我发现TIME能够发挥最佳效果。 您有很多选项,例如,您可以将所有内容打包到一个文件exe。
我喜欢和PyInstaller一起使用它来提高速度。
答案 2 :(得分:4)
答案 3 :(得分:1)
使用Pyinstaller。 安装后,在项目所在的目录中打开终端。
$ pyinstaller script1.py script2.py ...
(其中script1,script2等是项目中使用的所有脚本。)
命令完成后,打开dist
文件夹并进入子目录。你会找到一个可执行文件。
希望它有所帮助。