Chinaunix首页 | 论坛 | 博客
  • 博客访问: 770848
  • 博文数量: 478
  • 博客积分: 0
  • 博客等级: 民兵
  • 技术积分: 4831
  • 用 户 组: 普通用户
  • 注册时间: 2014-06-28 11:12
文章分类

全部博文(478)

文章存档

2019年(1)

2018年(27)

2017年(21)

2016年(171)

2015年(258)

我的朋友

分类: Android平台

2016-06-16 17:12:11

首先我申明,我不是很懂pyc文件,也不是很懂Python。之所以写这个是因为今天刚好在执行python的时候发现目录下多了个pyc文件,用nodepad打开居然全部是二进制码,所以就google下。也顺便学习:

 

pyc 是由py文件经过编译后二进制文件,py文件变成pyc文件后,加载的速度有所提高,而且pyc是一种跨平台的字节码,是由python 的虚 拟机来执行的。pyc的内容,是跟python的版本相关的,不同版本编译后的pyc文件是不同的,2.5编译的pyc文件,2.4版本的 python是无法执行的。pyc文件也是可以反编译的,不同版本编译后的pyc文件是不同。

 

如何编译成可运行的pyc文件:

Python 2.7.1 (r271:86832, Nov 27 2010, 18:30:46) [MSC v.1500 32 bit (Intel)] on
win32
Type "help", "copyright", "credits" or "license" for more information.
>>> import py_compile
>>> py_compile.compile("D:/test.py")
>>>

批量编译只需要输入对应的目录名称即可

 

此时便可以看到在对应的目录下生产了pyc文件

pyc文件是用来保存python虚拟机编译生成的byte code 的。在python的运行过程中,如果遇到import首先在设定好的path中寻找对应的.pyc或者.dll 文件。如果没有这些文件,则编译成对应的PycodeObject并穿件.pyc文件写入中间结果。

 

 

链接一篇好文章:暂时没时间看,先收藏。

http://blog.163.com/dailongquan@126/blog/static/52600902200812862955306/

阅读(563) | 评论(0) | 转发(0) |
给主人留下些什么吧!~~