使用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

分类: 计算机技术
推荐阅读:
Python中__getitem__()方法和索引器[]的详细用法 在本文中将详细描述如何使用Python为自定义对象使用索引器和类的__getitem__()方法;
Python 列表去重的几种方法 列表去重是指通过消除重复的元素,将列表中的所有唯一元素保留下来的操作;在Python中,存在多种方法删除列表中重复的元素,下面是一些常用的方法;
C语言实现斐波那契数列 对于斐波那契数列,其下一个数字是前两个数字的和,例如:0、1、1、2、3、5、8、13、21等等;斐波那契数列的前两个数为0和1;使用C语言实现斐波那契数列的方法有两种,递归和无递归;
Rust todo宏的用法与示例 在Rust中,todo宏在代码中标记尚未实现或尚未完成的部分;当你在开发过程中遇到需要实现但展示没有完成的功能时,可以使用todo宏来提醒自己或其它开发者,以便稍后返回并完成这部分。
Rust中宏与函数的区别 宏能够接受不同数量和类型的参数,这使得宏在处理多样化的输入时更加灵活。函数具有明确定义的参数列表和返回值类型,参数数量和类型通常是固定的。
Linux终端显示文件中的特定行 在Linux系统下,你如果想在终端显示文件中的指定行,那么你只需这一条命令: