python 编译器pyc_python编译pyc和pyo
pyc是python编译器编译后的字节码
pyo是python编译器优化编译后的字节码
官方的说法是pyc和pyo在程序的执行上并没有变快,只是在加载这些模块时变快。
并且pyo会在一些情况(很少的情况下)会发生功能上的错误。
pyo会去除asset和__doc__。
其实pyc和pyo很容易被反编译,所以又好多人问为什么python没有像c/c++那样的可以编译成很难被反编译的二进制级别的文件。
接下来说说怎么编译成pyc和pyo文件。
生成pyc文件
有2中方法生成pyc文件,py_compile或者compileall
命令如下:
python -m py_compile [PYTHONFILE]
python -m compileall [PYTHONFILE]
python -m compileall [DIRECTORY]
compileall 要比 py_compile功能强大,可以编译一个文件还可以编译整个目录,包括其子目录。
另外compileall还提供下面的选项:
-l
只编译当前目录,忽略器子目录
-f
强制重新编译
-q
只打印出错误,不打印编译的文件列表
-ddestdir
编译文件的输出路径
-xregex
过滤器,用来选择什么样的文件需要被编译,regex为正则表达式
生成pyo文件
compileall是无法生成pyo文件的,只能使用py_compile。
命令如下:
python -O -m py_compile [PYTHONFILE]
python -OO -m py_compile [PYTHONFILE]
一个O就会移除asset,2个OO就会将asset和__doc__都移除。
完。
版权所有,禁止转载. 如需转载,请先征得博主的同意,并且表明文章出处,否则按侵权处理.
分享到:
python 编译器pyc_python编译pyc和pyo相关推荐
- python 编译器pyc_python编译pyc和pyo | 学步园
pyc是python编译器编译后的字节码 pyo是python编译器优化编译后的字节码 官方的说法是pyc和pyo在程序的执行上并没有变快,只是在加载这些模块时变快. 并且pyo会在一些情况(很少的情 ...
- Python 常见文件格式 .py .pyc .pyw .pyo .pyd 之间的主要区别
Python 常见文件格式 .py .pyc .pyw .pyo .pyd 之间的主要区别 Python 是一种面向对象.解释型计算机程序设计语言.Python 语法简洁.清晰,具有丰富和强大的类库. ...
- python编译pyc、pyo
python3.2以后,使用python -m compileall ./命令编译当前目录及子目录的py文件为pyc时,会在每个目录生成一个__pycache__目录,然后把编译后的pyc文件放入此目 ...
- python的py、pyc、pyo、pyd文件区别
py是源文件, pyc是源文件编译后的文件 pyo是源文件优化编译后的文件 pyd是其他语言写的python库 先把源码py文件编译成pyc或者pyo,然后由python的虚拟机执行,相对于py文件来 ...
- python文件 py、pyc、pyo、pyd文件
py是源文件, pyc是源文件编译后的文件 pyo是源文件优化编译后的文件 pyd是其他语言写的python库 先把源码py文件编译成pyc或者pyo,然后由python的虚拟机执行,相对于py文件来 ...
- 【python】Python 常见文件格式 .py .pyc .pyw .pyo .pyd简介
文章目录 概览 .py 文件 .pyw 文件 .pyo 文件 .pyd 文件 .pyd文件上手方法 概览 Python([ˈpaɪən])是一种面向对象.解释型计算机程序设计语言.Python语法简洁 ...
- Python 常见文件格式 .py .pyc .pyw .pyo .pyd
转载于此 Python([ˈpaɪθən])是一种面向对象.解释型计算机程序设计语言.Python 语法简洁.清晰,具有丰富和强大的类库. Python源代码遵循 GPL (GNU General P ...
- ⑥python模块初识、pyc和PyCodeObject
一.模块初识(一) 模块,也叫库.库有标准库第三方库. 注意事项:文件名不能和导入的模块名相同 1. sys模块 import sys print(sys.path) #打印环境变量 print(sy ...
- python语言采用编译执行方式_Python程序的执行过程 解释型语言和编译型语言
我初学Python时,听到的关于Python的第一句话就是,Python是一门解释性语言,我就这样一直相信下去,直到发现了*.pyc文件的存在.如果是解释型语言,那么生成的*.pyc文件是什么呢?c应 ...
最新文章
- R语言ggplot2可视化时间序列数据并添加稳定趋势线识别数据的稳定趋势
- 轻量级HTTP服务器Nginx
- java 中数组与list_Java中List与数组相互转换实例分析
- 龙果学院mysql分布式集群代码_龙果学院-MySQL大型分布式集群解决方案
- cad新手必练300图_零基础学习CAD软件难吗?超全CAD入门学习教程送给你
- 学习笔记(2)centos7 下安装mysql
- 代码学习-Linux内核网卡收包过程(NAPI)
- 解决eclipse无法启动:Failed to create the Java Virtual Machine
- vcf通讯录转excel
- 文字转语音软件免费的哪个最好用:快试试最像人声的微软语音合成助手吧,本地版微软语音合成工具下载
- 华北电力大学控制与计算机工程学院怎么样,华北电力大学控制与计算机工程学院实践部10月25日动保劳动感想...
- 关于renameTo的用法
- DJ15 8086 中断程序设计
- 爬取安居客租房详情+翻页
- STM32一文通(8) 串口通讯
- 前端面试合集(更新中……)
- SAP FICO全解析之-公司代码
- 2022 CSP-J 游记
- 抖音诉百度不正当竞争纠纷案撤诉
- Python+selenium自动化-js处理日历控件(修改readonly属性)