2.6.2 字节编译
来源:互联网 发布:电视挂墙高度知乎 编辑:程序博客网 时间:2024/05/16 15:31
什么是Python的.pyc文件
字节编译与编译的区别
.pyc文件的产生
.pyc文件的使用
.pyc文件
计算机只认识二进制的机器语言,所以在执行Python模块的时候,有两种执行方式:
1.是先将模块里面的内容编译成二进制语言,然后执行这些二进制语言;
2.是直接执行对应模块的二进制语言程序。
第二种方式省略了编译这一步,所以执行速度相对来说要快一些。
而把模块编译成二进制语言程序的这个过程叫做字节编译,这个过程会产生一个与编译的模块对应的.pyc文件。
.pyc文件就是经过编译后的模块对应的二进制文件
字节编译与编译(编译型语言&解释型语言)
Python中虽然出现了编译这个过程,但是Python中编译的过程是在Python的解释器中发生的。
其实每种程序要想让计算机执行,都只能变成二进制的形式,
编译型语言是指在软件中就有一个独立的编译模块去将程序编译,
Python中字节编译这部分功能是由解释器完成的
#-*-coding:utf-8-*-
__author__ = 'allen'
'1.导入模块,自动编译'
import abc #解释器自动生成abc.pyc
'2.cmd命令操作符编译'
#python -m compileall xxx
为什么需要pyc文件
“这个需求太明显了,因为py文件是可以直接看到源码的,如果你是开发商业软件的话,不可能把源码也泄漏出去吧?所以就需要编译为pyc后,再发布出去。当然,pyc文件也是可以反编译的,不同版本编译后的pyc文件是不同的,根据python源码中提供的opcode,可以根据pyc文件反编译出 py文件源码,网上可以找到一个反编译python2.3版本的pyc文件的工具,不过该工具从python2.4开始就要收费了,如果需要反编译出新版本的pyc文件的话,就需要自己动手了(俺暂时还没这能力^--^),不过你可以自己修改python的源代码中的opcode文件,重新编译 python,从而防止不法分子的破解。”
此段文字截取自:http://www.cnblogs.com/dkblog/archive/2009/04/16/1980757.html
0 0
- 2.6.2 字节编译
- 字节编译
- python字节编译
- 程序编译中的字节对齐
- 程序编译中的字节对齐
- python3之字节码编译
- 程序编译中的字节对齐
- 字节码的编译原理
- 编译warning,字节对齐?奇怪的问题
- 学习Python---Python字节码编译
- Java编译、反编译、查看字节码
- Cocos2d-x Lua编译字节码
- jvm字节代码的编译机制
- 从finally看class编译字节码
- scala编译的class字节码实现
- VS2013编译 multibyte 长字节编码错误
- 字节对齐2
- 2字节对齐算法
- 网段IP区间
- 判断是否是第一次启动的方法 两句代码就可以轻松实现
- BFS(广搜) 倒油问题
- 距scoi仅一月的时候
- 2.6.1认识Python模块
- 2.6.2 字节编译
- matlab实现zbar_scan_y
- OSI/RM 开放系统互联参考模型
- 2.6.3from…import详解
- WWW 服务器(LAMP)搭建
- Paxos和分布式存储系统
- nodejs+express一个很经典的问题--异步获取数据模板渲染
- 实现列表手势向左向右滑动删除条目
- textView表情代码相关