python中的字符编码

字符编码需要记住的概念

1.内存中固定使用的unicode编码 ,我们唯一可以改变的是存储到硬盘时使用的编码格式

2.要想保证存储的文件不乱码,应该保证文件当初是什么编码格式格式存的,就以什么编码格式读取

Unicode-------编码----gbk
unicode《------解码-------gbk
python2通过文件头指定文件编码

#coding:gpk & utf-8

 

GBK:用2Bytes表示一个中文字符,1Bytes去表示英文字符
utf-8 用1Bytes表示英文,用3Bytes表示中文 #默认使用
unicode:内存中使用的是unicode编码,unicode把全世界的字符
都建立好对应关系用2Bytes去表示一个字符
ASCII码表:用1Bytes表示一个英文字符,1英文字符=8bit=1Bytes

美国人用的

 

python3 默认使用编码是utf-8

Python2 默认使用编码是 Ascll

在python2中有两种字符串编码格式
1.unicode:
x=u’上‘ 字符前面加u
2.unidoce编码后
x=’上‘ 若果文件头 coding:utf-8那么上被存成utf-8格式

python3中只要一种字符串编码格式
1.unicode
x=’上’

2.编码与解码
    unicode----------编码encode-----》gbk

    unicode《-------解码decode-----gbk

总结python3
在pyhton2中的字符串类型str都是unicode按头文件指定编码
在python2中也可以制造unicode,需要在字符串前加u       

 

现在统一默认都是使用utp-8编码,避免出现乱码


在python3中字符串类型str都是unicode编码的
所有python3中的字符串类型可以编码成其他字符编码格式,

 

编码的结果是Bytes类型

 

 

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值