一聚教程网:一个值得你收藏的教程网站

最新下载

热门教程

python文件类型的学习笔记

时间:2015-03-21 编辑:简简单单 来源:一聚教程网

一、文件分类:

1)*.py文件,这就是我们常见的py源文件,没什么好说的;
2)*.pyc, py源文件编译成的二进制字节码文件,依然由python加载执行,不过速度会提高,也会隐藏源码;
3)*.pyo,优化编译后的程序,也是二进制文件,适用于嵌入式系统。

二、生成pyc和pyo文件

1)如何生成pyc文件呢?

假设我们有一个1.py文件需要编译成pyc文件,则在python shell输入
import py_compile
py_compile.compile('1.py')
这样就可以生成pyc文件了
2)如何生成pyo文件呢?
python -O -m py_compile 1.py

另外,pyc和pyo跟py文件是一样的,依然可以用python 1.pyc等形式执行

python源代码的文件以py为扩展名,由python程序解释,不需要编译,以下为hello.py的代码

[root@AY130704092906278009Z python]# cat hello.py
#!/usr/bin/python
print("hello world")
 

字节代码

python源文件经编译后生成的扩展名为pyc的文件

写一个python程序去编译上面的hello.py代码:(2.py程序代码如下)


[root@AY130704092906278009Z python]# cat 2.py
import py_compile
 
py_compile.compile('hello.py')

运行python 2.py可以看到生成了一个__pycache__文件夹,下面有一个pyc文件,那个文件也可以直接执行


[root@AY130704092906278009Z python]# python 2.py
[root@AY130704092906278009Z python]# ls
2.py  hello.py     reference.py  str_methods.py  using_list.py
code  __pycache__  seq.py        using_dict.py   using_tuple.py
代码优化

经过优化的源文件,扩民名为.pyo
运行:

python -O -m py_compile hello.py,同样他也生成在__pycache__文件夹下。


[root@AY130704092906278009Z python]# cd __pycache__/
[root@AY130704092906278009Z __pycache__]# ls
hello.cpython-33.pyc  hello.cpython-33.pyo
[root@AY130704092906278009Z __pycache__]# python hello.cpython-33.pyc
hello world
[root@AY130704092906278009Z __pycache__]# python hello.cpython-33.pyo
hello world


上面三种就是python的三种文件格式。【以上均基于python3.3上运行的结果,python其他版本可能有所不同】

热门栏目