python py、pyc、pyo、pyd文件区别

转载 2015年11月17日 13:59:25


py是源文件,pyc是源文件编译后的文件,pyo是源文件优化编译后的文件,pyd是其他语言写的python库


python并非完全是解释性语言,它是有编译的,先把源码py文件编译成pyc或者pyo,然后由python的虚拟机执行,相对于py文件来说,编译成pyc和pyo本质上和py没有太大区别,只是对于这个模块的加载速度提高了,并没有提高代码的执行速度,通常情况下不用主动去编译pyc文件,文档上说只要调用了import model那么model.py就会先编译成pyc然后加载

1.如果需要特殊的单独编译,则只需要使用py_complie这个模块就行了,如下
import py_compile
py_compile.compile(r‘H:\game\test.py‘)
 
compile函数原型:
compile(file[, cfile[, dfile[, doraise]]])
file 表示需要编译的py文件的路径
cfile 表示编译后的pyc文件名称和路径,默认为直接在file文件名后加c 或者 o,o表示优化的字节码
dfile 错误消息保存的路径
doraise 可以是两个值,True或者False,如果为True,则会引发一个PyCompileError,否则如果编译文件出错,则会有一个错误,默认显示sys.stderr中,而不会引发异常

2.如果要把一个文件夹下的所有py文件都进行编译,则用下面的命令
import compileall
compileall.compile_dir(dirpath)
dirpath是我们要编译的文件夹的绝对路径

3.如果要编译pyo文件则
编译成 pyo 就是在控制台执行 python -O -m py_compile file.py
其中file.py就是我们要编译的源文件


主要O为大写

相关文章推荐

python下编译py成pyc和pyo

其实很简单, 用 python -m py_compile file.py python -m py_compile /root/src/{file1,file2}.py 编译成pyc文件...

python中pyc和pyo的作用

pyc文件,是python编译后的字节码(bytecode)文件。只要你运行了py文件,python编译器就会自动生成一个对应的pyc字节码文件。这个pyc字节码文件,经过python解释器,会生成机...

Python特性(十二):with语句的执行流程

与传统的高级语言相比,Python添加了两个重要的关键字,即yield和with。yield关键字的用法在前面的几篇博文中已经介绍的较为详细,从本博文开始,介绍with的用法。 与with语句密切...

将python源程序编译为pyc或pyo字节码程序

为了提高自己搭建的Django站点的安全性,将加密后的数据库连接信息以及加密使用的信息单独存放在了一个配置文件中,之后写了一个中间层来解密配置文件中的密文并用于站点应用连接数据库。虽然这样一种安全方式...

python 文件 .py .pyc .pyw .pyo .pyd

DLL文件即动态链接库文件,是一种可执行文件,它允许程序共享执行特殊任务所必需的代码和其他资源。打不开,不过可以使用反汇编;PYD是一种PYTHON动态模块。实质上还是dll文件,只是改了后缀为PYD...

Linux下minicom的配置和使用方法

http://hi.baidu.com/zengzhaonong/blog/item/8427c633c835de40ac4b5f47.html 安装配置minicom----------------...

Python特性(十一):生成器对象的close方法

生成器对象的close方法会在生成器对象方法的挂起处抛出一个GeneratorExit异常。GeneratorExit异常产生后,系统会继续把生成器对象方法后续的代码执行完毕。参见下面的代码。 ...

Python量化交易平台开发教程系列6-中层引擎设计

原创文章,转载请注明出处:用Python的交易员 前言 中层引擎在设计上主要是为了进一步封装底层接口所暴露出的API函数,使得其更容易被上层的GUI和策略组件调用。本篇的内容会相对简单,主...

Python量化交易平台开发教程系列3-vn.py项目中API封装的编译

原创文章,转载请注明出处:用Python的交易员 前言 经历了两篇的理论折磨后,本篇教程开始进入实际操作的环节,这里作者假设读者是毫无C++经验的用户,操作一步步配图,还有问题的来vn.py项...

Python量化交易平台开发教程系列4-事件驱动引擎原理和使用

原创文章,转载请注明出处:用Python的交易员 前言 从这篇开始,后面的教程都会基于Python(终于可以跟C++说再见了)。 经过上一篇复杂繁琐的API编译后,我们已经有了一个可...
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:深度学习:神经网络中的前向传播和反向传播算法推导
举报原因:
原因补充:

(最多只允许输入30个字)