2. 使用 Python 解释器

2.1 调用 Python 解释器

Python 解释器在可以使用的机器上一般装在 /usr/local/bin/python3.6 目录下。在 Unix Shell 中,把它放在 /usr/local/bin 下面,可以让你输入下面的指令来启动 Python:

  1. python3.6

注释:在 Unix 中,Python3.x 的解释器并不是默认安装成可以直接用 python 命令执行,所以,同时安装 Python2.x 并不冲突

因为在哪一个目录安装解释器是可以选择的,所以其他的地方也可以安装。请用本地的 Python guru 或者系统管理员权限检查。(例如,/usr/local/python 是一个很受欢迎的可选安装位置)

在 Windows 机器中,Python 通常被安装在 C:\Python36 中,但是你可以在安装时更改安装位置。你可以在命令行中通过输入下面的命令提示符,把这个目录加入你的路径中:

  1. set path=%path%;C:\python36

在命令提示符中输入一个文件结尾操作符(Unix 中是 Control-D, Windows 中是 Control-Z)可以让解释器以 零退出状态 退出。如果这个操作无效,你可以输入下面的指令来退出解释器:quit()

解释器包含了交互编辑、历史记录代替、支持命令读取系统的代码填充等编辑特性。检查是否支持命令行编辑的最快方法也许是向你第一个 Python 提示符中按下 Control-P。如果有反应,你就可以使用命令行编辑。更多关键字的介绍,参阅附录交互式输入编辑和历史记录代替 。如果没有反应,或者如果响应了 ^P ,命令行编辑就不可使用。你只能通过使用退格键来删除当前行中的字符。

第二个打开解释器的方法是 python -c command [arg] ... ,它用命令的方式执行语句,和 shell 中的 -c 选项类似。因为 Python 的语句常常包含 shell 专用的空格和其他字符,所以建议用单引号包住整个命令。

一些 Python 的模块也可以当做脚本使用。这些模块可以通过 python -m module [arg] ... 来调用。你在命令行中拼写出模块的全名,就可以执行模块的源文件了。

在使用一个脚本文件的时候,能够运行脚本然后进入交互模式有时候很有用。可以通过在脚本前面传入 -i 来完成。

所有的命令行参数在命令行和环境中详细描述了。

2.1.1 参数的传递

脚本名字和后面的附加参数如果能被解释器识别,它们会被转成一个字符串的列表,然后在 sys 模块中被分配为 argv 变量。你可以通过执行 import sys 来获取这个列表。列表的长度至少是一。如果没有提供脚本也没有提供参数, sys.argv[0] 就是一个空字符串。如果脚本的名字给的是 '-' (代表标准输入), sys.argv[0] 就会被设为 '-' 。当你使用了 -C 命令时, sys.argv[0] 就会被设为 '-C' 。当你使用 -m 模块时, sys.argv[0] 会被设为当前模块的全名。在 -C 命令或 -m 模块后面的参数不会被解释器参数处理所使用,但是会为了命令或模块的处理而被保留在sys.argv 中。

2.1.2 交互模式

从终端读取时命令行时,解释器就会在所谓的 交互模式 下。在这个模式下,主命令提示符 用来提示下一条指令,通常使用三个大于号(>>>)。用 次命令提示符 来提示命令的延续,默认用三个点表示(…)。解释器在打印出第一条提示符之前,会输出含有其版本号和版权信息的欢迎信息:

  1. $ python3.6
  2. Python 3.6 (default, Sep 16 2015, 09:25:04)
  3. [GCC 4.8.2] on linux
  4. Type "help", "copyright", "credits" or "license" for more information.
  5. >>>

在使用多行结构的命令时,要用到延续命令行。if 语句,可以作为一个例子来看一下:

  1. >>> the_world_is_flat = True
  2. >>> if the_world_is_flat:
  3. ... print("Be careful not to fall off!")
  4. ...
  5. Be careful not to fall off!

更多交互模式的信息,参阅交互模式