Python 3默认情况下对源代码文件使用 UTF-8编码。我是否仍然应该在每个源文件的开头使用编码声明?就像 # -*- coding: utf-8 -*-
# -*- coding: utf-8 -*-
因为默认的 是 UTF-8,您只需要在偏离默认值时使用该声明,或者如果您依赖于其他工具(如 IDE 或文本编辑器)来使用该信息。
换句话说,对于巨蟒来说,只有当您想要使用不同的编码时,才必须使用该声明。
其他工具,比如你的编辑器,可以支持类似的语法,这就是为什么 PEP 263规范在语法上允许相当大的灵活性(它必须是一个注释,文本 coding必须在那里,后跟 :或 =字符和可选的空格,后跟一个公认的编解码器)。
coding
:
=
注意,它只适用于 Python 读取源代码。它不适用于执行该代码,因此不适用于打印、打开文件或任何其他 I/O 操作如何在字节和 Unicode 之间进行转换。有关 Python、 Unicode 和编码的更多细节,我强烈建议您阅读 Python Unicode或 Ned Batchelder 的非常详细的 < em > 实用 Unicode 讲座。
UTF-8
对于多编码项目:
如果一些文件被编码在 non-utf-8中,那么即使是这些 编码在 UTF-8你也应该添加编码声明,因为 黄金法则是 Explicit is better than implicit.
non-utf-8
Explicit is better than implicit.
为 Pycharm 中的特定文件配置编码
# vim: set fileencoding=<encoding name> :