python入门之编码

一、什么是编码?
首先,我们从一段信息即消息说起,消息以人类可以理解、易懂的表示存在。
我打算将这种表示称为“明文”(plain text)。对于说英语的人,纸张上打印的或屏幕上显示的英文单词都算作明文。
其次,我们需要能将明文表示的消息转成另外某种表示,我们还需要能将编码文本转回成明文。
从明文到编码文本的转换称为“编码”,从编码文本又转回成明文则为“解码”。

1、Ascii:这是由数字、字母、特殊字符组成的。
字节:8位表示一个字节。
字符:是你看到的内容的最小组成单位。
abc : a 一个字符。
中国:中 一个字符。

2、unicode: 万国码
a : 0000 1011
起初:   a : 0000 1011 0000 1011
中:          0000 1011 0000 1111
升级:  a :  0000 1011 0000 1011 0000 1011 0000 1011
中:          0000 1011 0000 1111 0000 1011 0000 1011

3、utf-8:最少用8位表示一个字符。
a:      0000 1011
欧洲:  0000 1011 0000 1011
亚洲中:0000 1011 0000 1011 0000 1011

4、gbk:国标
a:   0000 1011
中: 0000 1011 0000 1011 两个字节。

1,不同编码之间的二进制是不能互相识别的。
2,对于文件的存储及传输 不能是unicode的编码。
python3x
int
bool
bytes:内部编码方式:(非unicode,utf-8,gbk.gb2312...)
str : 内部编码方式unicode
list
dict
tuple

字母:

str:表现形式:s1 = 'abcd'
内部编码:unicode

bytes:表现形式:s2 = b'abcd'
内部编码:非unicode

中文:

str:表现形式:s1 = '中国'
内部编码:unicode

bytes:表现形式:b1 = b'\xe4\xb8\xad\xe5\x9b\xbd'
内部编码:非unicode

猜你喜欢

转载自www.cnblogs.com/xudenghui/p/9077867.html