2.2 解释器及其环境
2.2.1 源码的编码
默认下,Python 的源码是用 UTF-8 编码的。在这种编码下,可以在字符串字面量、标识符、注释中同时使用全世界的各种语言。尽管标准库的标识符仅仅使用了 ASCII 的字符集,但是任何可移植代码应该遵循它。为了使所有这些字符都可以正确的显示出来,你的编辑器一定要识别 UTF-8,而且它也必须使用文件中所有字符都支持的字体。
声明一个字符编码而不是默认的编码,需要在文件的 第一行 加入下面的特殊指令。语法如下:
# -*- coding: encoding -*-
在这里,编码需要是 Python 所支持的 codecs 之一。
举个栗子,如果要声明 Windows-1252 编码,你的源代码文件的第一行需要这样写:
# -*- coding: cp-1252 -*-
首行规则 的一个特例是当你的源代码以一个 Unix “shebang” line 为开头。在这种情况下,编码声明就应该放在文件的第二行。举个栗子:
#!/usr/bin/env python3
# -*- coding: cp-1252 -*-