查看全部 Python3 基础教程
调用解释器
安装目录
通常 Python 的解释器被安装在目标机器的 /usr/local/bin/python
目录下。因为安装路径是可选的,所以也有可能安装在其它位置,例如,/usr/local/python
就是一个很常见的选择。
启动解释器
解释器的操作有些像 Unix Shell:使用终端设备做为标准输入来调用它时,解释器交互的解读和执行命令,通过文件名参数或以文件做为标准输入设备时,它从文件中解读并执行脚本。
启动解释器的第二个方法是 python -c command [arg] ..."
,这种方法可以在命令行中直接执行语句,等同于Shell的 -c
选项。因为 Python 语句通常会包括空格之类的特殊字符,所以最好把 command 语句用双引号包起来。
两种输入方式
-
python <file
程序中调用input()
或raw_input()
这样的输入请求,来自于确定的文件。因为在程序开始执行前,解析器已经将文件全部读入,所以程序立即指向文件末尾。 -
python file
通常方式,可以来自于任何连接到 Python 解释器的标准输入,无论是文件还是设备。
使用脚本文件时,经常会运行脚本然后进入交互模式。这可以通过在脚本前面加上
-i
参数来实现。如果脚本来自标准输入,就不能这样运行,原因同python <file
。
退出解释器
输入一个文件结束符(Unix 上是 Ctrl+D
,Windows 上是 Ctrl+Z
)解释器会以 0 值正常退出。如果这没有起作用,你可以输入以下命令退出:import sys; sys.exit()
。
参数传递
传递参数时,脚本名和附加参数会被放入一个名为 sys.argv
的字符串列表,它的长度至少是 1。
- 当没有给定脚本和参数时,
sys.argv[0]
是一个空串; - 当给定脚本名为
-
(表示标准输入)时,sys.argv[0]
被设置为-
; - 当使用
-c
命令时,sys.argv[0]
被设定为-c
。
-c
命令之后的参数不会被 Python 解释器的选项处理机制处理,而是留在sys.argv
中,供脚本命令操作。
交互模式
当从 tty 中读取命令时,解释器被称为处于交互模式。在这种模式下,它以主要提示符提示下一个命令,通常是三个大于号(>>>
);对于续行,它会以辅助提示符进行提示,默认为三个点(...
)。解释器在打印第一个提示之前会打印一条欢迎消息,说明其版本号和版权声明:
$ python3.9
Python 3.9 (default, June 4 2019, 09:25:04)
[GCC 4.8.2] on linux
Type "help", "copyright", "credits" or "license" for more information.
>>>
输入多行构造时需要连续行。作为示例,请看以下 if
语句:
>>> the_world_is_flat = True
>>> if the_world_is_flat:
... print("Be careful not to fall off!")
...
Be careful not to fall off!
更多详情可以参考交互模式。
解释器及其环境
源程序编码
默认情况下,Python 源文件被视为采用 UTF-8 编码。通过这种编码,世界上大多数语言的字符都可以在字符串、标识符和注释中同时使用——尽管标准库仅将 ASCII 字符用作标识符,这是任何可移植代码都应遵循的约定。为了正确显示所有这些字符,编辑器必须能识别出文件的 UTF-8 编码,并提供支持该文件所有字符的字体。
要声明默认编码以外的其他编码,应在文件的第一行添加一个特殊的注释行。语法如下:
# -*- coding: encoding -*-
其中,encoding
是 Python 所支持的有效 codecs 之一。
例如,声明要使用 Windows-1252 编码,源代码文件的第一行应为:
# -*- coding: cp1252 -*-
“第一行规则”的一个例外情况是源代码以 UNIX“ shebang” 行开头。在这种情况下,应将编码声明添加为文件的第二行。例如:
#!/usr/bin/env python3
# -*- coding: cp1252 -*-
参考资料
Python3 Tutorial – Using the Python Interpreter
Python3 Tutorial – Interactive Mode