2. 使用 Python 解释器

2.1. 调用 Interpreter

Python 解释器通常在可用的那些机器上以/usr/local/bin/python的形式安装;将/usr/local/bin放入 Unix Shell 的搜索路径可以pass键入以下命令来启动它

python

到 Shell。由于选择解释器所在的目录是一种安装选项,因此可以在其他地方使用;请与您当地的 Pythonmaven 或系统 Management 员联系。 (例如/usr/local/python是一个受欢迎的替代位置.)

在 Windows 计算机上,Python 安装通常位于C:\Python27,尽管您可以在运行安装程序时更改它。若要将此目录添加到您的路径,可以在 DOS 框中的命令提示符下键入以下命令:

set path=%path%;C:\python27

在主提示符下键入文件结尾字符(Unix 上为 Control-D,Windows 上为 Control-Z)将导致解释器以零退出状态退出。如果这不起作用,则可以pass键入以下命令来退出解释器:quit()

Interpreter 的行编辑Function通常不是很复杂。在 Unix 上,无论谁安装了解释器,都可能启用了对 GNU readline 库的支持,该库增加了更详尽的交互式编辑和历史记录Function。最快的检查是否支持命令行编辑的方法是,在您收到的第一个 Python 提示符下键入 Control-P。如果发出蜂鸣声,则说明您进行了命令行编辑;有关按键的介绍,请参见附录交互式 Importing 编辑和历史记录替换。如果没有任何反应,或者回显了^P,则命令行编辑不可用;您将只能使用退格键从当前行中删除字符。

解释器的操作有点像 Unix shell:在将标准 Importing 连接到 tty 设备的情况下调用时,它以交互方式读取和执行命令。当使用文件名参数或以文件作为标准 Importing 调用时,它将读取并执行该文件中的* script *。

启动解释器的第二种方法是python -c command [arg] ...,它在* command 中执行语句,类似于 shell 的-c选项。由于 Python 语句通常包含 Shell 程序专用的空格或其他字符,因此通常建议使用单引号将 command *整体引号。

一些 Python 模块也可用作脚本。可以使用python -m module [arg] ...调用这些命令,该命令将执行* module *的源文件,就好像您在命令行中拼出了全名一样。

使用脚本文件时,有时能够运行脚本并随后进入交互模式很有用。这可以pass在脚本之前传递-i来完成。

命令行和环境中描述了所有命令行选项。

2.1.1. 参数传递

当解释器知道时,脚本名称和其后的其他参数将转换为字符串列表,并分配给sys模块中的argv变量。您可以pass执行import sys来访问此列表。列表的长度至少为 1;如果未提供任何脚本且未提供任何参数,则sys.argv[0]是一个空字符串。当脚本名称指定为'-'(表示标准 Importing)时,sys.argv[0]设置为'-'。当使用-c * command *时,sys.argv[0]设置为'-c'。当使用-m * module *时,sys.argv[0]设置为所定位模块的全名。在-c * command *或-m * module *之后找到的选项不会被 Python 解释器的选项处理占用,而是留在sys.argv中供命令或模块处理。

2.1.2. 互动模式

当从 tty 中读取命令时,解释器被称为处于交互模式。在这种模式下,它使用* primary 提示符提示下一条命令,通常是三个大于号(>>>);对于续行,它将使用 secondary 提示符*进行提示,默认情况下为三个点(...)。解释程序在打印第一个提示之前会打印一条欢迎消息,说明其版本号和版权语句:

python
Python 2.7 (#1, Feb 28 2010, 00:02:06)
Type "help", "copyright", "credits" or "license" for more information.
>>>

Importing 多行构造时需要连续行。例如,看一下此if语句:

>>> the_world_is_flat = 1
>>> if the_world_is_flat:
...     print "Be careful not to fall off!"
...
Be careful not to fall off!

有关交互模式的更多信息,请参见Interactive Mode

2.2. Interpreter 及其环境

2.2.1. 源代码编码

默认情况下,Python 源文件被视为以 ASCII 编码。要语句默认编码以外的其他编码,应在文件的* first *行中添加特殊的 Comments 行。语法如下:

# -*- coding: encoding -*-

其中* encoding *是 Python 支持的有效codecs之一。

例如,要语句要使用 Windows-1252 编码,源代码文件的第一行应为:

# -*- coding: cp1252 -*-

“第一行”规则的一个 exception 是源代码以UNIX“ shebang”行开头。在这种情况下,应将编码语句添加为文件的第二行。例如:

#!/usr/bin/env python
# -*- coding: cp1252 -*-