1、使用 auto-py-to-exe 工具
auto-py-to-exe 是一个用于将Python程序打包成可执行文件的图形化工具
安装 auto-py-to-exe
要求 python 环境要大于或等于 2.7
然后在 cmd 里面输入: # pip install auto-py-to-exe ,
安装完成之后,在 cmd 输入: # auto-py-to-exe , 来启动 auto-py-to-exe 程序。
启动的界面如下
auto-py-to-exe 的部分选项介绍 (1)Script Location 指定将要被打包的 python 文件 (2)Onefile 下有两个选项,分别是:One Directory 和 One File 如果选择 One Directory ,那么程序打包完成后会是一个文件夹的形式展现 如果选择 One File ,那么程序打包完成后就一个 .exe 文件 (3) Console Window 主要设置打包程序运行时,是否出现控制台 Console Based : 当打包的程序运行时会显示一个控制台界面 Window Based (hide the console) : 会隐藏控制台界面,主要用于带有 GUI 的 python 程序打包 (4) Icon 用于指定打包程序的图标 实战:在控制台执行命令 # auto-py-to-exe, 启动GUI程序 auto-py-to-exe 打包程序主要分 3 部分,分别是: 打开 auto-py-to-exe 配置打包选项 查看打包效果 Icon 选择一个 ico 文件,此处不是必须操作,可以不设置 这里实战演示了 “ 2、画个风车.py ”这个文件的打包过程,这里打包生成了一个同名文件夹 可指定输出的目录 # 注意,如果程序里面有自己的模块,我们必须把模块的目录添加到 Additional Files 里面。 不然会出现 Failed to execute script XXX 错误 打包过程有点慢,需要等待几分钟
这里放置了 我的一个GUI小程序代码,下面演示打包的过程
import tkinter
import random
root=tkinter.Tk()
root.title('随机数密码生成器')
root.geometry('500x400+400+200')
temp = tkinter.StringVar(root,value='请输入所需密码的长度(位数)')
entry_temp=tkinter.Entry(root,textvariable=temp)
entry_temp.place(x=10,y=10,width=480,height=20)
def clear(event):
temp.set('')
entry_temp.bind('',clear)
list = []
def generate():
s=" abcdefghijklmnopqrstuvwxyz01234567890ABCDEFGHIJKL MNOPQRSTUVIXYZ!aN$x*6*( )?"
temp2 = temp.get()
temp3 = int(temp2)
p1 = random.sample(s,temp3)
p2 = "".join(p1)
list.append(p2)
t1 = tkinter.Text(root, height=20, width=70)
t1.insert("insert",list)
t1.place(x=0, y=80)
buttonGenerate=tkinter.Button(root,text='生成随机密码',command=generate)
buttonGenerate.place(x=200,y=40,width=80,height=20)
root.mainloop()
启动程序
打包后的效果,在输出目录中,可以看到生成的文件
点击,运行程序,
这里,打包的时候,没有设置关闭控制台,实际,在可选项里可以勾选
方法2,使用 pyinstaller 模块,进行打包
还是以上面的代码为例
安装方法 # pip install pyinstaller
打包命令如下: 打包时,需要进入.py文件的当前目录 pyinstaller -F 文件名.py # 其实我们使用Pyinstaller 打包时可以增加 -w 参数来取消cmd弹窗,即后台控制台 # pyinstaller -F -w filename.py # 打包完成后,会生成2个文件夹,bulid 和 dist , 其中dist中存放着我们需要的 exe 程序 # 同时在当前路径下,还会生成一个同名的 .spec文件
打包过程如下:
打包完成后,出出现以下文件,到改目录下,去找,就可以打开.exe文件了
好了,以上就是2种 将.py文件打包成 .exe文件的方法
如果本文章对你有用,麻烦点个 赞!