python脚本的发布方式
Python是一个脚本语言,被解释器解释执行。它的发布方式:
- .py文件:对于开源项目或者源码没那么重要的,直接提供源码,需要使用者自行安装Python并且安装依赖的各种库。(Python官方的各种安装包就是这样做的)
- .pyc文件:有些公司或个人因为机密或者各种原因,不愿意源码被运行者看到,可以使用pyc文件发布,pyc文件是Python解释器可以识别的二进制码,故发布后也是跨平台的,需要使用者安装相应版本的Python和依赖库。
- 可执行文件:对于非码农用户或者一些小白用户,你让他装个Python同时还要折腾一堆依赖库,那简直是个灾难。对于此类用户,最简单的方式就是提供一个可执行文件,只需要把用法告诉Ta即可。比较麻烦的是需要针对不同平台需要打包不同的可执行文件(Windows,Linux,Mac,…)。
本文主要就是介绍最后一种方式,.py和.pyc都比较简单,Python本身就可以搞定。将Python脚本打包成可执行文件有多种方式,本文介绍PyInstaller。
使用pyinstaller
安装
pip install pyinstaller
检查安装是否成功
pyinstaller --version
简单用法
进入到要打包的python脚本所在目录,执行命令:
pyinstaller -F mycript.py
在新增加的dist目录下的就是可执行文件。
这种方法不会像pyinstaller mycript.py
那样的在dist目录中会产生一堆文件,需要全部打包生成的文件才能发布。而是在dist目录下只有一个可执行文件,这个单文件就可以发布了,可单独运行在当前的操作系统下,不需要解析器和依赖库。
生成文件
运行dist目录中的exe文件,明显感觉运行效率降低,运行后需要等待一段时间才有反应。好处是在运行者的机器上不用安装python和脚本依赖的库。另外,PyInstaller打包的执行文件,只能在和打包机器系统同样的环境下。也就是说,不具备可移植性,若需要在不同系统上运行,就必须针对该平台进行打包。
关于更多用法与原理介绍,可参考: