经过复杂的开发、调试之后,终于得到一个 Python 程序,这个程序或许精巧,或许有些古拙,但它是我们心血的结晶,我们当然希望将这个程序发布出来。
Python 提供了一个 zipapp 模块,通过该模块可以将一个 Python 模块(可能包含很多个源程序)打包成一个 Python 应用,甚至发布成一个 Windows 的可执行程序。
生成可执行的Python档案包
zipapp 是一个可以直接运行的模块,该模块用于将单个 Python 文件或整个目录下的所有文件打包成可执行的档案包。
zipapp 模块的命令行语法如下:
python -m zipapp source [options]
在上面命令中,source 参数代表要打包的 Python 源程序或目录,该参数既可以是单个的 Python 文件,也可以是文件夹。如果 source 参数是文件夹,那么 zipapp 模块会打包该文件夹中的所有 Python 文件。
该命令的 options 支持如下选项:
-o ,–output=:应选项指定输出档案包的文件名。如果不指定该选项,所生成的档案包的文件名默认为 source 参数值,并加上 .pyz 后缀。
-p ,–python=:改选项用于指定 Python 解释器。
-m ,–main=:该选项用于指定 Python 程序的入口函数。该选项应该为 pkg.mod:fn 形式,其中 pkg.mod 是一个档案包中的包或模块,fn 是指定模块中的函数。如果不指定该选项,则默认从模块中的 __main__.py 文件开始执行。
-c