Python基础第一节~编码问题

68 阅读1分钟
计算机初期,采用1Byte=8bit的编码方式,1个字节表示最大整数为2550 - 255被用来表示大小写英文字母、数字和一些符号,这个编码表被称为ASCII编码,但显然不够表示汉字,所以就有了GB2312编码,为了统一所有文字的编码,Unicode 应运而生。
Python 在后来添加了对 Unicode 的支持,以 Unicode 表示的字符串用`u'...'`表示。不过在最新的 Python 3 版本中,字符串是以 Unicode 编码的,也就是说,Python 的字符串支持多语言。就像上面的例子一样,我的代码中没有加`u'...'`,也能正常显示。
所以,当你的源代码中包含中文的时候,在保存源代码时,就需要务必指定保存为 UTF-8 编码。当Python 解释器读取源代码时,为了让它按 UTF-8 编码读取,我们通常在文件开头写上这两行:

#!/usr/bin/env python3

-- coding: utf-8 --

第一行注释是为了告诉 Linux/OS X 系统,这是一个 Python 可执行程序,Windows 系统会忽略这个注释;

第二行注释是为了告诉 Python 解释器,按照 UTF-8 编码读取源代码,否则,你在源代码中写的中文输出可能会有乱码。