codecs 模块定义了标准 [[Python]] 编解码器(编码器和解码器)的基类并提供对内部 Python 编解码器注册表的访问,该注册表负责管理编解码器和错误处理的查找过程。
标准编码
Python 内置了多种编解码器,这些编解码器既可以通过 C 函数实现,也可以使用字典作为映射表来实现。
| 编码 | 别名 | 语言 |
|---|---|---|
| ascii | 646, us-ascii | 英语 |
| big5 | big5-tw, csbig5 | 繁体中文 |
| big5hkscs | big5-hkscs, hkscs | 繁体中文 |
| cp037 | IBM037, IBM039 | 英语 |
| cp437 | 437, IBM437 | 英语 |
| cp950 | 950, ms950 | 繁体中文 |
| gb2312 | chinese, csiso58gb231280, euc-cn, euccn, eucgb2312-cn, gb2312-1980, gb2312-80, iso-ir-58 | 简体中文 |
| gbk | 936, cp936, ms936 | 统一汉语 |
| gb18030 | gb18030-2000 | 统一汉语 |
| hz | hzgb, hz-gb, hz-gb-2312 | 简体中文 |
| iso2022_jp_2 | iso2022jp-2, iso-2022-jp-2 | 日语,韩语,简体中文,西欧,希腊语 |
| utf_32 | U32, utf32 | 所有语言 |
| utf_32_be | UTF-32BE | 所有语言 |
| utf_32_le | UTF-32LE | 所有语言 |
| utf_16 | U16, utf16 | 所有语言 |
| utf_16_be | UTF-16BE | 所有语言 |
| utf_16_le | UTF-16LE | 所有语言 |
| utf_7 | U7, unicode-1-1-utf-7 | 所有语言 |
| utf_8 | U8, UTF, utf8, cp65001 | 所有语言 |
| utf_8_sig | 所有语言 |
注:
- 不区分大小写;
- 用下划线 (_) 代替连字符 (-) 同样有效;