Python 程序打包
引言
不知道大家有没有过这样的疑问:
为什么我们写的程序,需要在 VS Code
里面按 运行
,或者在终端
输入 python xxx.py
才能运行,但是别人的程序,可以双击打开就运行呢?
其实,这只是差了一个打包的过程。
回顾一下我们的 Project 2
。小明每天上班,都需要先打开终端
,运行一下 python process.py
,让它在后台自动处理数据。
那么,这整个过程中,小明的电脑都做了什么呢?
首先,process.py
是以英文的形式存在电脑的硬盘上。运行的时候,Python
会把它翻译成二进制的机器码运行。
其中,我们会用到一些库(不管是第三方的 requests
还是 Python
自带的 time
之类的)。这些库也都在你的磁盘上(Python
自带的库会在安装 Python
的时候一并下载,第三方的库是你用 pip install
安装的),Python
会找到它们(如果找不到,Python
会报错),然后把它们也一并翻译成二进制码。
得到二进制码之后,它就可以开始运行了。不过,如果运行中,你还要用到一些 数据
(比如图片、声音、视频、文本等),它们也会被加载。
所以,我们要把程序运行需要的所有东西都打包好(包括代码、用到的库、要加载的数据,和 Python
解释器本身),让用户下载,这样双击打开就能用(不用额外去安装 Python
或者配置其它玩意儿)。
当然,我们不需要手动做这些事情。我们可以使用 pyinstall
来打包。详细使用方法请查看本周的 resource
部分。