使用PyInstaller将Python程序打包成EXE文件详细教程

通常我们执行python程序时,需要有Python环境,并要预先安装好需要使用的各个库,这样把程序给他人使用时不太方便;我们可以将python环境以及相应的运行库和程序源代码打包到一个单独的EXE文件中,这样分发程序就变得容易多了,从某种程度上说,还能起到保护程序源码不被泄露的作用。

开始前请确保安装了Python以及 Pyinstaller;PyInstaller安装方法:pip3 install PyInstaller

安装成功后,Python安装目录下的Scripts文件夹里会多出几个文件,pyinstaller.exe和一些附属工具。

先写一个简单的 hello world实验程序:

print('hello world !')

保存文件,命名为main.py

先来了解pyinstaller.exe 的基本用法:

pyinstaller [-options] filename

filename 为你的源码文件,- options 如下:

  • -F 指定打包后只生成一个exe文件
  • -D 创建一个目录,包含EXE文件(默认选项)
  • -c 使用控制台,无界面(默认)
  • -w 使用窗口,无控制台
  • -p 添加搜索路径,让其找到对应的库。
  • -i 程序的ico图标

打开CMD,进入到Python安装目录下的Scripts文件夹,你也可以将这个文件夹添加到系统环境变量,这样不论你在哪个目录都可以使用 PyInstaller。

输入命令:

pyinstaller -F c:\my\main.py

等待程序结束;如无意外,你会发现Scripts目录下多出两个目录,build 和dist,打包好的程序就在 dist中。

加入-w参数,程序将会在后台执行,看不到界面,如果你的程序是一个GUI程序,需要加入这个参数,不然会有个黑框框哦:

pyinstaller -F -w c:\my\main.py

加入-i参数,并指定ico文件路径,这就是打包的EXE文件图标:

pyinstaller -F -i c:\my\my.ico c:\my\main.py

ico文件必须是有效的,不能随便将jpg等图片改下扩展名拿来使用。

原创内容,如需转载,请注明出处;

本文地址: https://www.perfcode.com/p/657.html

分类: 计算机技术
推荐阅读:
Kali国内源 Kali是一个开源的、基于Debian的Linux发行版,旨在进行高级渗透测试和安全审计;Kali 包含数百个针对各种信息安全任务的工具,例如渗透测试、安全研究、计算机取证和逆向工程。
Linux系统中删除特定文件外的所有文件 有这么个场景,如果你想删除某个目录下除了指定文件外的所有文件,你会怎么做呢?在Linux系统下,你可以只需要一条命令就可实现这个功能;
Python str()函数 str() 函数用于将指定的对象转换为字符串类型。如果对象已经是字符串类型,则返回对象本身;否则,会调用对象的 __str__() 方法来进行转换。
使用pip安装PySide6 在安装PySide6之前,你必须先安装Python 3.6 以上版本;你可以使用pip命令进行安装,该命令将安装PySide6最新版本;
TypeError: can't take floor or mod of complex number. 在Python中,复数类型不支持地板除(floor division)和取模(modulo)运算。因此,在尝试对复数执行//、%或divmod()函数运算时,会引发TypeError异常,提示can't take floor or mod of complex number.
Python abs()函数 abs()函数是Python内置函数之一,它返回一个数的绝对值。这个函数只有一个参数,可以是整数、浮点数或者复数。