将.py文件打包成.exe文件的两种方法

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(<Button-1>,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文件的方法

经验分享 程序员 微信小程序 职场和发展