@songying
2018-07-15T15:47:14.000000Z
字数 629
阅读 1004
python高级特性
总的来说, 把码位转换成字节序列的过程是编码;把字节序列转换成码位的过程是解码。
str.encode('utf-8') # 使用UTF-8把str对象编码成bytes对象
byte.decode('utf-8') # 使用 UTF-8把bytes对象解码成str对象
目前 Web 中最常见的 8 位编码; 3 与 ASCII 兼容(纯 ASCII 文本是有效的 UTF-8 文本)。别名有:“utf_8", "utf8", "U8".
该异常经常出现在当我们将字符串转化成二进制序列时。
把文本转换成字节序列时,如果目标编码中没有定义某个字符,那就会抛出 UnicodeEncodeError 异常,除非把 errors 参数传给编码方法或函数,对错误进行特殊处理。
该异常经常发生在把二进制序列转换成字符串时。
Python 3 默认使用 UTF-8 编码源码,Python 2(从 2.5 开始)则默认使用 ASCII。如果.py
文件编码与python版本不同就会导致该问题。
在 .py
文件头部添加以下代码
# coding: utf-8
《流畅的python》 4.5