1. 基于虚拟机的语言:Java、C#、Python

  2. 先编译后解释的语言:Java、Python

    ​ 如,我们在命令行执行一个Java程序:

    ​ javac hello.java

    ​ java hello

    ​ Python也一样,当我们执行python hello.py时,

    ​ Python编译的结果保存在内存的PyCodeObject中

    ​ Python解释器将PyCodeObject写回到pyc文件中,.pyc就是预编译后的字节码文件

  3. Python程序在第二次运行时,首先会在硬盘中寻找pyc文件,并判断它是不是最新的,如果是,直接载入。

  4. 可以说pyc是PyCodeObject的一种持久化保存方式。

  5. 并不是所有的.py文件在运行的时候都会产生.pyc文件,只有在import相应的.py文件的时候,才会生成相应的.pyc文件。

  6. .pyc文件的另一个好处是,降低源码泄露的风险。因为可以把源码编译成pyc,再发布出去。

参考链接:

https://www.cnblogs.com/Samuel-Leung/p/10768192.html

https://blog.csdn.net/laobai1015/article/details/88292848