一、pyc文件
我们开发一个python脚本,文件的后缀为.py。如果运行这个py文件,Python内部会先将源码文件(.py文件)编译成字节码(byte code)文件(.pyc文件)。接着运行编译后的字节码,最后在控制台输出此次运行的结果。总结来说,pyc是一个可执行的被编译后的py文件,其特点就是在运行时,可以省去python编译器去再次编译的时间,进而就优化了性能。
二、如何编译?
2.1、源码方式编译
写一个Python脚本,使用代码来进行编译,对于熟练使用Python的是一个好办法。
import py_compile as pc
pc.compile('xxx.py')
2.2、cmd命令方式编译
首先定位到py文件所在的目录,打开cmd。输入以下命令即可
python -m py_compile xxx.py
三、多文件编译
值得注意的是,我们在实际工作中,也不会只用一个文件。这时候需要一次性把项目目录下的所有源码文件编译,操作也很简单。也是有两种方式来进行编译,各自选择适合自己的即可。
3.1、多文件源码方式编译
import compileall as ca
# 将d盘xxx\xx目录下所有源码文件编译
ca.compile_dir(r'D:\\xxx\xx')
3.2、多文件cmd命令方式编译
python -m compileall D:\\xxx\xx
四、编译后运行注意事项
4.1、原平台运行
编译后会在有源码的目录下生成一个_pycache_目录,里面存放了当前目录下所有的编译后的pyc文件。需要做的几点如下所示:
1)将_pycache_下的pyc拷贝到对应文件目录下。
2)删除源码py文件。
3)重命名pyc文件为原源码文件名字。
4)原py文件删除即可
4.2、跨平台运行注意事项
编译后的pyc是可跨平台的,但是python的版本是不能跨的。比如你使用3.6版本去编译好的一个pyc文件,在另一个平台上也是需要使用3.6版本的。(没有具体测试)