Python 程序运行方式全解析
1. Unix 系统下的特殊首行
在 Unix 系统中,文件的第一行有着特殊的意义。操作系统的 shell 会利用这一行来寻找运行文件其余部分程序代码的解释器。例如有一个名为 brian
的文件(注意,它没有像之前模块文件那样使用 .py
后缀。虽然添加 .py
后缀并无坏处,还能帮助你记住这是一个 Python 程序文件,但由于你不打算让其他模块导入该文件中的代码,所以文件名无关紧要)。
如果你使用 chmod +x brian
这样的 shell 命令赋予该文件可执行权限,就可以像运行二进制程序一样从操作系统的 shell 中运行它(以下操作中,要么确保当前目录 .
在你的系统 PATH
设置中,要么使用 ./brian
来运行):
% brian
The Bright Side of Life...
1.1 Unix 的 env
查找技巧
在一些 Unix 系统中,你可以通过编写特殊的首行注释来避免在脚本文件中硬编码 Python 解释器的路径,如下所示:
#!/usr/bin/env python
...script goes here...
采用这种编码方式时, <