|
发表于 2019-11-21 11:58:36
|
显示全部楼层
这些错误往往发生在 Python 从外接纳字符数据的过程中,在 Python 内部,字符数据都是按 Unicode 编码格式存在,任何外部数据在进入Python 系统的时候,都需要让 Python 知道,数据的编码格式是什么,以便 Python 可以正确地把编码转换到 Unicode。
例如,如果 Python 源代码中含有中文字符,那就必须在文件开头对文本编码格式进行声明,在 Windows 下一般声明为
在 Linux 系统下,一般声明为
另外,打开文本文件读取内容的过程中也常常会出现编码问题,原因通常也是文本文件编码并非 Python 缺省文件编码格式(在 Windows 下是 "gbk",也是Windows 记事本和写字板的缺省编码格式)或在 open() 中声明的编码格式与实际情况不符。
有些时候,打开和读取用 Windows 记事本按 ANSI 编码保存的文本文件也会出现编码错误,这个时候,只要把文件按 UTF-8 编码保存,然后,把 encoding = "utf-8" 选项添加到 open() 中即可解决问题。 |
|