零基础学Python
上QQ阅读APP看书,第一时间看更新

2.1 Python的文件类型

Python文件类型分为3种,分别是源代码、字节代码、优化代码。这些代码可以直接运行,不需要进行编译或者链接。这正是Python这门语言的特性,Python的文件通过Python解释器解释运行。Windows中有python.exe与pythonw.exe,一般安装在路径C:\Python33中,当然也可以改变它的路径,只要保证环境变量设置正确即可。在*nix系统中,Python解释器被安装在目标机器的/usr/local/bin/python目录下,将/usr/local/bin路径放进shell的搜索路径中,即可通过python命令在终端调用。

2.1.1 源代码

Python源代码的扩展名以py结尾,可在控制台下运行。Python语言写的程序不需要编译成二进制代码,可以直接运行源代码。pyw是Windows下开发图形用户接口(Graphical user interface)的源文件,作为桌面应用程序的后缀名。这种文件是专门用于开发图形界面的,由pythonw.exe解释运行。以py和pyw为后缀名的文件可以用文本工具打开,并修改文件的内容。

2.1.2 字节代码

Python源文件编译后生成pyc后缀的文件,pyc是编译过的字节文件,这种文件不能使用文本编辑工具打开或修改。pyc文件是与平台无关的,因此Python的程序可以运行在Windows、UNIX、Linux等操作系统上。py文件直接运行后即可得到pyc类型的文件,或通过脚本生成该类型的文件。下面这段脚本可以把hello.py编译为hello.pyc。

import py_compile
py_compile.compile('hello.py')

保存此脚本,运行后即可得到hello.pyc文件。

2.1.3 优化代码

扩展名为pyo的文件是优化过的源文件,pyo类型的文件需要用命令行工具生成。pyo文件也不能使用文本编辑工具打开或修改。下面把hello.py编译成hello.pyo。

(1)启动命令行窗口,进入hello.py文件所在的目录。例如:

cd /D D:\developer\python\example\02\2.1

D:\developer\python\example\02\2.1是笔者设置的hello.py文件所在的目录,读者可根据自己的环境进行修改。

(2)在命令行中输入python-O-m py_compile hello.py,并按回车键。

python -O –m py_compile hello.py

代码说明

❑参数“-O”表示生成优化代码。

❑参数“-m”表示把导入的py_compile模块作为脚本运行。编译hello.pyo需要调用py_compile模块的compile()方法。

❑参数“hello.py”是待编译的文件名。

最后,查看hello.py文件所在的目录,此时目录中生成了一个名为hello.pyo的文件。