万恶之源-再谈编码


1.is和==区别
id()内置函数
== 判断两边的值
is 判断内存地址

回顾编码
1. ASCII: 英文, 特殊字符, 数字, 8bit, 1byte
2. GBK: 中文 16bit, 2byte. 兼容ASCII
3. unicode: 万国码, 32bit 4byte. 兼容ASCII
4. UTF-8: 长度可变的unicode. 英文:8bit, 欧洲:16bit, 中文:24bit 3byte

python只能用ASCII
Python 有Unicode,默认的编码就是Unicode
内存里用的是Unicode.硬盘和网络传输用的是UTF-8活着GBK

2.encode()编码.获取到的是编码之后的结果.bytes
3.decode()解码.把byes编程我们熟悉的字符串
编码和解码的时候都需要制定编码格式.
      
 s = "我是文字"
 bs = s.encode("GBK")   # 我们这样可以获取到GBK的文字
 s = bs.decode("GBK")    # 解码
 bss = s.encode("UTF-8")   # 重新编码
 print(bss)

 


# 把GBK转换成UTF-8
# 首先要把GBK转换成unicode. 也就是需要解码
# 然后需要进⾏重新编码成UTF-8
posted @ 2018-07-09 15:08  一纸休书  阅读(113)  评论(0编辑  收藏  举报