Python中有两种默认的字符串:str和unicode。在Python中一定要注意区分“Unicode字符串”
和“unicode对象”的区别。后面所有的“unicode字符串”指的都是python里的“unicode对象”。
事实上在Python中并没有“Unicode字符串”这样的东西,只有“unicode”对象。一个传统意义上
的unicode字符串完全可以用str对象表示。只是这时候它仅仅是一个字节流,除非解码为unicode
对象,没有任何实际的意义。
函数 decode( char_set )可以实现 其它编码到 Unicode 的转换,函数 encode( char_set )实
现 Unicode 到其它编码方式的转换。
在windows下默认的文件编码是GBK,而linux的一般是utf-8.
想要查看文件的编码方式,使用vim打开文本,然后在命令行模式下输入:set fileencoding,回车即可。
有如下字符串
str1= "\u6709\u4e92\u8054\u7f51\u884c\u4e1a\u4eba"
方法1:
str1.encode().decode() 括号里可填的参数,“gbk”,"gb2312","utf-8",这三者的组合,一般情况都可以转换成中文
这样还不行怎么办:
遇到类似的编码问题时,就要先检查响应内容text是什么类型,
如果type(text) is bytes,那么:
text.decode('unicode_escape')
如果type(text) is str,那么:
text.encode('latin-1').decode('unicode_escape')
标签:unicode,python,text,decode,字符串,Unicode,encode From: https://www.cnblogs.com/hphsh/p/17804956.html