python中字符串编码转换

Posted denise1108

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了python中字符串编码转换相关的知识,希望对你有一定的参考价值。

字符串编码转换程序员最苦逼的地方,什么乱码之类的几乎都是由汉字引起的。
其实编码问题很好搞定,只要记住一点:

任何平台的任何编码,都能和Unicode互相转换。

UTF-8与GBK互相转换,那就先把UTF-8转换成Unicode,再从Unicode转换成GBK,反之同理。

注意:在python3中encode,在转码的同时还会把string 变成bytes类型,decode在解码的同时还会把bytes变回string

 

# 这是一个 UTF-8 编码的字符串
utf8Str = "你好地球"

# 1. 将 UTF-8 编码的字符串 转换成 Unicode 编码
unicodeStr = utf8Str.decode("UTF-8")

# 2. 再将 Unicode 编码格式字符串 转换成 GBK 编码
gbkData = unicodeStr.encode("GBK")

# 1. 再将 GBK 编码格式字符串 转化成 Unicode
unicodeStr = gbkData.decode("gbk")

# 2. 再将 Unicode 编码格式字符串转换成 UTF-8
utf8Str = unicodeStr.encode("UTF-8")

decode的作用是将其它编码的字符串转换成Unicode编码
encode的作用是将Unicode编码转换成其他编码的字符串
一句话:UTF-8是对Unicode字符集记性编码的一种编码格式

以上是关于python中字符串编码转换的主要内容,如果未能解决你的问题,请参考以下文章

python3字符串编码转换

python中字符串编码转换

ASP.NET 几种编码转换成汉字

使用非utf-8编码在Python中解析XML

python中的字符编码和转换

Python3中字符串的编码与解码以及编码之间转换(decodeencode)