PyInstaller,打包Python代码的神器!让你写的程序脱离Python解释器,独立运行!想想,把你的得意之作分享给小伙伴,他们不用安装Python就能跑起来,是不是很酷?今天就来聊聊这个打包利器。
PyInstaller初探
PyInstaller,简单来说就是一个把你的Python代码打包成一个独立可执行文件的工具。啥意思呢?就是说,你写了个Python程序,本来要运行它,电脑上得先装Python解释器。用了PyInstaller,它帮你把程序和解释器一起打包,变成一个exe文件(Windows系统),或者一个app文件(macOS系统)。这样,别人就能直接运行你的程序了,不用再费劲装Python了。是不是很方便?安装PyInstaller
安装PyInstaller,超级简单!打开你的命令行或者终端,输入pip install pyinstaller
,回车,搞定!要是安装速度慢,可以试试国内的镜像源,比如pip install pyinstaller -i https://pypi.tuna.tsinghua.edu.cn/simple
。打包你的第一个程序
假设你写了个超级简单的程序,叫hello.py
: print(“Hello, PyInstaller!”)
现在,我们要把它打包成exe文件。打开命令行,进入hello.py
所在的目录,然后输入pyinstaller hello.py
,回车!稍等片刻,打包就完成了。
你会发现,在hello.py
同级目录下,多了几个文件夹:build
、dist
和一个hello.spec
文件。build
文件夹是打包过程中产生的临时文件,可以不用管它。dist
文件夹里,就是我们想要的exe文件了!
温馨提示:第一次打包可能会比较慢,因为它要把Python解释器和你的程序一起打包进去。
不同的打包方式
PyInstaller提供了不同的打包方式,最常用的是--onefile
和--onedir
。--onefile
:把所有东西打包成一个单独的exe文件,干净利落!运行起来也方便。--onedir
:会生成一个包含exe文件和一堆依赖文件的文件夹。虽然看起来乱了点,但有时候调试起来更方便。
举个例子,你想把hello.py
打包成一个单独的exe文件,就用这个命令:pyinstaller --onefile hello.py
。
添加图标
想让你的程序看起来更专业?可以给它加个图标!用--icon
参数指定图标文件的路径就行了。比如:pyinstaller --onefile --icon=my_icon.ico hello.py
。温馨提示:图标文件必须是.ico
格式的。
打包包含外部文件的程序
如果你的程序里用到了图片、音频、文本文件等外部资源,打包的时候也要把它们一起打包进去。最简单的方法是把这些文件和你的Python代码放在同一个目录下,PyInstaller会自动把它们打包进去。处理复杂的依赖
有些程序依赖一些比较复杂的库,打包的时候可能会遇到问题。这时候,可以试试--hidden-import
参数,手动指定需要打包的库。比如:pyinstaller --hidden-import=pandas hello.py
。其他实用技巧
--noconsole
:打包成没有控制台窗口的程序,适合图形界面程序。--upx-dir
:使用UPX压缩exe文件,可以减小文件体积。