python编码类型互转总结
1、只有在unicode下才能将utf-8与gbk互转
2、unicode是在内存中使用,bytes是文件存储和网络传输时使用
py3时:
a=“中国” 和a=u"中国" 是一个意思,都表示str类型unicode存储类型,即默认是unicode存储类型
c=b"中国" 表示str类型bytes存储类型
py2时:
a=“中国” 和a=b"中国" 是一个意思,表示str类型bytes存储类型,即默认是bytes存储类型
a=u"中国" 表示str类型unicode存储类型
转换:
py3时:
unicode 类型— encode —> bytes 类型
示例:
s1="hello world !" //s1表示str类型unicode存在类型
type(s1)
s2=s1.encode("utf-8") //表示把s1转换成str类型bytes存在类型,并赋值给s2
或s2=s1.encode("gbk") //表示把s1转换成str类型bytes存在类型,并赋值给s2
type(s1)
type(s2)
print (s2)
py2时:
bytes 类型— decode —> unicode 类型
示例:
'''
遇到问题没人解答?小编创建了一个Python学习交流QQ群:531509025
寻找有志同道合的小伙伴,互帮互助,群里还有不错的视频学习教程和PDF电子书!
'''
s1=b"love" // s1表示str类型bytes存在类型
type(s1)
s2=s1.decode("utf-8") // 表示把s1转换成str类型unicode存在类型,并赋值给s2
或s2=s1.decode("gbk") // 表示把s1转换成str类型unicode存在类型,并赋值给s2
type(s1)
type(s2)
print (s2)