python小记-python中的字符串和byte的相互转换

来源:互联网 发布:unity3d 导出android 编辑:程序博客网 时间:2024/05/16 18:20

在python中是通过使用 bytes 和 str 类型之间的转换解决多编码之间的问题的

假设有字符串:

str1 = "诸葛亮"

要将 str1 转换为 gbk 编码的,怎么办呢?

在python中,可以认为一切皆对象,这里的  "诸葛亮"  就是一个str类型的对象

那么只需要

(1) str1.encode("gbk")

这样就可以得到 gbk 编码的 "诸葛亮"


(2)"诸葛亮".encode("gbk")

同样也可以得到 gbk 编码的 "诸葛亮"


(3)bytes("诸葛亮", "gbk")

同上 ~~~


(4)bytes(str1, "gbk")

同上 ~~~


--------------------------------------------------------------------------------------------------------------------

假设有:

str2 = "黄月英"

byte1 = "诸葛亮".encode(“gbk”)

这样一个 bytes 类型的变量指针,如果想要使用 "+" 号 与 str2 相加,是不允许的,所以需要先转换为 str


--> 转换为 str

str3 = byte1.decode("gbk")


或者

str3 = str(byte1, "gbk")


这样转换后, str2 + str3 就是允许的