猿问

使用python如何得到此种编码测试所对应的中文呢

整理了以下几种编码:
编码1:测试
编码2:\u6d4b\u8bd5
编码3:测试
编码4:%e6%b5%8b%e8%af%95
在编程过程中,经常会碰到很多的编码格式的数据,现在自己对于N多的编码格式还是一头雾水。
不知道大家是怎么准确识别各种编码的呢?
另外:使用python如何得到此种编码测试所对应的中文呢?
白猪掌柜的
浏览 244回答 2
2回答

慕森王

余兴节目。前三个都是Unicode原始值,最后一个是UTF-8。简单的用Python说明一下:>>>s=b'\xe6\xb5\x8b\xe8\xaf\x95'>>>print(s.decode('utf-8'))测试>>>u=u'\u6d4b\u8bd5'>>>print(u)测试每个Unicode字符的编码只有一个,表示为一个或长或短的十六进制数。但把一串Unicode转换成真正用于存储和传输的字节序列,办法很多。UTF-8就是使用最广泛(绝大多数情况下也应该使用)的一种Unicode编码方法。至于格式的不同,只是用的地方不一样,用不同的格式封一下。我记得编码1和3是HTML实体,2是Python的Unicode字符表示法,4是URL中不能直写字符的转义表示法。

暮色呼如

1和3是HTML实体,可以通过标准库HTMLParser来解析:#coding=utf8importHTMLParserparser=HTMLParser.HTMLParser()s1=parser.unescape('测试')prints1#output:测试s2=parser.unescape('测试')prints2#output:测试2是unicode字面值,要想获得真正的unicode,可以这样做:In[1]:u=unicode('\u6d4b\u8bd5','unicode_escape')In[2]:uOut[2]:u'\u6d4b\u8bd5'In[3]:printu测试
随时随地看视频慕课网APP

相关分类

JavaScript
我要回答