python2和python3的字符编码:encode、decode

python2

python2的默认编码是ASCII码,在做编码转换时,通常需要以unicode作为中间编码,所以在python2中先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码

eg:

str.decode('utf-8').encode('utf-8')

python3

但是在python3中, 默认编码就是unicode,所以不需要解码,直接就可以编码成另一种编码

str--->(encode)--->bytes,bytes--->(decode)--->str
格式:

str.encode('utf-8')

eg:

s = "我是文字"

gbk_s = s.encode("GBK") # 我们这样可以获取到GBK的⽂字 

# 把GBK转换成UTF-8

# ⾸首先要把GBK转换成unicode. 也就是需要解码

s = gbk_s.decode("GBK") # 解码

# 然后需要进行重新编码成UTF-8

utf_s = s.encode("UTF-8") # 重新编码

print(utf_s)

posted @ 2019-12-02 20:24  Fancey  阅读(474)  评论(0编辑  收藏  举报