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, pyw, pyo, pyd)及发布程序时的选择

在写Python程序时我们常见的扩展名是py, pyc,其实还有其他几种扩展名。下面是几种扩展名的用法。...
  • chroming
  • chroming
  • 2016年08月01日 10:18
  • 8333

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

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

python包cv2.pyd

  • 2018年01月11日 19:22
  • 63.57MB
  • 下载

python用opencv的包cv2.pyd

  • 2017年12月24日 16:37
  • 29.77MB
  • 下载

Python import .pyd 可能遇到路径的问题

Python import .pyd文件时会搜索sys.path列表中的路径 运行 import xxx.pyd 1. 'ImportError: No module named xxx' ...
  • xyk198307
  • xyk198307
  • 2015年04月27日 22:00
  • 4116

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

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

pydbg.7z pydasm.pyd用python2.7.3编译

  • 2012年12月07日 10:28
  • 51KB
  • 下载

使用C++创建Pyd文件扩展Python模块

1、需要说明的是Pyd文件其实就是dll,为了python能正常调用,这个dll规定了导出函数的一些规则。下面代码简单演示使用c++创建一个函数,并使用Python调用该模块。 (注意需要添加pyth...
  • pengyancai
  • pengyancai
  • 2017年01月17日 22:23
  • 2758

Cython的用法以及填坑姿势

因为项目需要,需要优化已有的Python代码。目前Python代码的执行过程是将Python代码转变成一行行指令,然后解释器解释指令的执行,调用到C代码层。如果去掉指令解释这个阶段,直接进入C代码层,...
  • feijiges
  • feijiges
  • 2017年09月11日 13:54
  • 887

编译完py后,pyc 和pyo文件是干嘛的?

pyc是由py文件经过编译后生成的二进制文件,py文件变成pyc文件后,加载的速度有所提高,并且可以实现源码隐藏。 pyo是优化编译后的程序,也可以提高加载速度,针对嵌入式系统,把需要的模块编译成p...
  • u013176681
  • u013176681
  • 2016年01月25日 21:45
  • 756
内容举报
返回顶部
收藏助手
不良信息举报
您举报文章:python py、pyc、pyo、pyd文件区别
举报原因:
原因补充:

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