[python]编译型语言vs解释型语言

来源:互联网 发布:vb中通用对话框 编辑:程序博客网 时间:2024/05/16 05:11

参考帖:http://blog.csdn.net/lujiandong1/article/details/50067655,写的很棒


    之前学习c的时候,它的修饰词是:高级语言,编译型语言。

    我们如何理解这句话呢,c语言是用高级语言编写的机器,不能直接执行(机器语言才能直接执行,例如汇编语言),c语言需要先编译、链接,最终生成可执行的二进制文件,机器才能执行。


    但是我们学习python的时候,说它是“解释型”语言。

    直到遇见.pyc,就疑惑了,这是怎么回事?  .pyc是不是编译的中间产物?

    原来python执行时,先生成编译结果并保存在内存的pcCodeObject中。程序运行结束时把编译结果写入硬盘的pyc。再次运行时候,从硬盘直接找pyc,找到就可以直接取pyc了。


    什么样的.py才会有.pyc?   使可重入的。就是被别的文件import的。