当前位置:   article > 正文

Python中Unicode中文字符串转换成 string字符串_python unicode to str

python unicode to str

reference: https://blog.csdn.net/qq_34802511/article/details/87705201

普通字符串可以用多种方式编码成Unicode字符串,具体要看你究竟选择了哪种编码:如何查看是那种编码尼:可以通过python中的内置方法,type()来查看是何种编码(一般Unicode和str)

unicodestring = u"Hello world"

将Unicode转化为普通Python字符串:“encode”

utf8string = unicodestring.encode(“utf-8”)
asciistring = unicodestring.encode(“ascii”)
isostring = unicodestring.encode(“ISO-8859-1”)
utf16string = unicodestring.encode(“utf-16”)
print utf8string,type(utf8string) # 结果:Hello world <type ‘str’>
print asciistring,type(asciistring) # 结果:Hello world <type ‘str’>
print isostring,type(isostring) # 结果:Hello world <type ‘str’>
print utf16string,type(utf16string) # 结果:Hello world <type ‘str’>

将普通Python字符串转化为Unicode:“decode”

plainstring1 = unicode(utf8string, “utf-8”)
plainstring2 = unicode(asciistring, “ascii”)
plainstring3 = unicode(isostring, “ISO-8859-1”)
plainstring4 = unicode(utf16string, “utf-16”)
print plainstring1,type(plainstring1) # 结果:Hello world <type ‘unicode’>
print plainstring2,type(plainstring2) # 结果:Hello world <type ‘unicode’>
print plainstring3,type(plainstring3) # 结果:Hello world <type ‘unicode’>
print plainstring4,type(plainstring4) # 结果:Hello world <type ‘unicode’>

str1 = utf8string.decode(“utf-8”)
str2 = asciistring.decode(“ascii”)
str3 = isostring.decode(“ISO-8859-1”)
str4 = utf16string.decode(“utf-16”)
print str1,type(str1) # 结果:Hello world <type ‘unicode’>
print str2,type(str2) # 结果:Hello world <type ‘unicode’>
print str3,type(str3) # 结果:Hello world <type ‘unicode’>
print str4,type(str4) # 结果:Hello world <type ‘unicode’>

字符串在Python内部的表示是unicode编码,因此,在做编码转换时,通常需要以unicode作为中间编码,即先将其他编码的字符串解码(decode)成unicode,再从unicode编码(encode)成另一种编码。

decode的作用是将其他编码的字符串转换成unicode编码,如str1.decode(‘gb2312’),表示将gb2312编码的字符串str1转换成unicode编码。

encode的作用是将unicode编码转换成其他编码的字符串,如str2.encode(‘gb2312’),表示将unicode编码的字符串str2转换成gb2312编码。

因此,转码的时候一定要先搞明白,字符串str是什么编码,然后decode成unicode,然后再encode成其他编码。

声明:本文内容由网友自发贡献,不代表【wpsshop博客】立场,版权归原作者所有,本站不承担相应法律责任。如您发现有侵权的内容,请联系我们。转载请注明出处:https://www.wpsshop.cn/w/笔触狂放9/article/detail/153731?site
推荐阅读
相关标签
  

闽ICP备14008679号