参考链接:https://www.jianshu.com/p/40a42bf1d15d
在Linux下面运行python文件,会发现生成了一个一样名字,但后缀不一样的文件,出去好奇网上查了一下。其实有过Java前台开发的应该有个印象,JS的代码也会生成一个编译 好的文件,只要你不改动文件,以后直接调用编译过的文件,省去了代码重新编译,提高响应速度。其实python作为高级语言,和Java一样面向对象的语言,其实目的是相同的。
什么是pyc文件呢?
简单来说,pyc文件就是Python的字节码文件,我们都知道Python是一种全平台的解释性语言,全平台其实就是Python文件在经过解释器解释之后(或者称为编译)生成的pyc文件可以在多个平台下运行,这样同样也可以隐藏源代码。其实,Python是完全面向对象的语言,Python文件在经过解释器解释后生成字节码对象PyCodeObject,pyc文件可以理解为是PyCodeObject对象的持久化保存方式。
什么时候会生成pyc文件呢?
pyc文件只有在文件被当成模块导入时才会生成。也就是说,Python解释器认为,只有import进行的模块才需要被重用。
通俗点就是你在其他python文件,引用了你前面写好的python文件里面的函数等,就会生成pyc文件,或者我发现你写个sh,文件去调用你的python文件,也是会生成一个pyc文件的。
生成pyc文件的好处显而易见,当我们多次运行程序时,不需要重新对该模块进行重新的解释。
pyc文件的过期时间
总结
总的来说,了解pyc其实对于Python开发者来说并没有多大的意义,本着钻研的精神写下这篇文章,感觉有一下几点可以考虑