Python字符编码转码之GBK,UTF8互转
在处理文本数据时,我们常常需要进行字符编码转码的操作。本篇文章将介绍如何使用Python实现GBK和UTF8之间的互相转换。
编码 “encode” 和解码 “decode”
在Python中,字符串的编码 “encode” 和解码 “decode” 分别使用 encode() 和 decode() 方法实现。
# 编码:str -> bytes
gbk_string = "中文字符编码转换"
utf8_bytes = gbk_string.encode('utf-8') # 将GBK编码的字符串编码成UTF8格式的字节串
print(utf8_bytes) # b'\xe4\xb8\xad\xe6\x96\x87\xe5\xad\x97\xe7\xac\xa6\xe7\xbc\x96\xe7\xa0\x81\xe8\xbd\xac\xe6\x8d\xa2'
# 解码:bytes -> str
utf8_string = utf8_bytes.decode('utf-8') # 将UTF8格式的字节串解码成UTF8编码的字符串
print(utf8_string) # 中文字符编码转换
上述代码中,我们使用字符串 "中文字符编码转换" 进行编码和解码操作。首先,我们将其编码成UTF8格式的字节串 utf8_bytes,然后再将其解码成UTF8编码的字符串 utf8_string。最后打印出 utf8_bytes 和 utf8_string 的结果。
GBK转UTF8
以下示例是将GBK编码的字符串转换成UTF8编码的字符串:
# GBK->UTF8
gbk_string = "中文字符编码转换"
utf8_string = gbk_string.encode('utf-8').decode('utf-8') # 先将GBK编码的字符串编码成UTF8格式的字节串,然后再将其解码成UTF8编码的字符串
print(utf8_string) # 中文字符编码转换
我们使用GBK编码的字符串 "中文字符编码转换",先将其编码成UTF8格式的字节串,然后再将其解码成UTF8编码的字符串,最终得到 "中文字符编码转换"。
UTF8转GBK
以下示例是将UTF8编码的字符串转换成GBK编码的字符串:
# UTF8->GBK
utf8_string = "中文字符编码转换"
gbk_string = utf8_string.encode('GBK').decode('utf-8') # 先将UTF8编码的字符串编码成GBK格式的字节串,然后再将其解码成GBK编码的字符串
print(gbk_string) # 中文字符编码转换
我们使用UTF8编码的字符串 "中文字符编码转换",先将其编码成GBK格式的字节串,然后再将其解码成GBK编码的字符串,最终得到 "中文字符编码转换"。
通过这两个示例,我们可以看到如何将GBK和UTF8之间互相转换。需要注意的是,编码和解码的方法必须相对应,否则转换结果会出现问题。
本站文章如无特殊说明,均为本站原创,如若转载,请注明出处:Python字符编码转码之GBK,UTF8互转 - Python技术站