模块文件就是python 的源程序文件,通过python编译就能生成字节码文件。
如何生成字节码文件呢?
Linux系统下,只要运行模块文件(.py),就会生成字节码文件(.pyc),例如 python test.py,就会生成test.pyc。
windows系统下,要生成字节码文件需要执行两条python 命令,第一条:import py_compile;第二条:py_compile.compile(r'test.py')。
模块文件和字节码文件都能直接运行,那么字节码文件有什么优势吗?
字节码文件的好处:
1. 可以保护开发者的权益,发布软件不用直接发布源代码,虽然字节码文件可以被反编译,至少让获取源码增加难度。
2. 可以提高执行效率,如果没有字节码文件的话,每次运行程序,都会先进行编译,生成字节码文件后,被虚拟机加载运行。
如果有生成字节码文件,只要你当前运行的程序没有源码改动,就不会进行编译,python虚拟机会直接加载已有的字节码文件,提高效率。