编码与解码

it2022-05-05  154

字符编码和解码

编码和解码

大家都知道计算机只认识二进制数字 0 和 1

编码和解码是一种映射关系,比如ASCII码表中字符A对应的十进制是65、对应的二进制0100 0001。解码是当计算机读到 0100 0001,就到对应的ASCII码表中一查,就发现是"A"

编码:真实字符与二进制串的对应关系。 真实字符 -->二进制串 解码:二进制串与真实字符的对应关系。 二进制串 -->真实字符


常用编码方式:

1. ASCII码: 占8位 1字节 不支持 中文 支持 英文,数字,符号 2. gbk码 国标: 支持 中文,英文,数字,符号 英文 16位 2个字节 中文 16位 2个字节 3. Unicode 万国码: 支持 中文,英文,数字,符号 英文 32位 4个字节 中文 32位 4个字节 4. Utf-8 长度可变的万国码 最少用8位 支持 所有 英文 8位 1个字节 中文 24位 3个字节

编码及解码方式

encode(编码方式)–>拿到明文编码后对应的字节

decode() -->将编码后的字节解码成对应的明文,编码和解码应该保持同一个码。

在python2x中默认的编码方式为ASCII,编码解码转换过程 UTF-8 -->Unicode --> GBK: utf-8 —decode()—> Unicode —encode()—>GBK GBK -->Unicode --> UTF-8: GBK —decode()—> Unicode —encode()—>UTF-8

在python3x中默认的编码方式为UTF-8 编码以及解码操作使用encode(),decode()


通常我们在建文件时,在文件开头要指定编码,例如: python文件通常写:#-- coding:utf-8 -- html文件通常写: CSS文件中 :@charset’utf-8’


最新回复(0)