使用编解码器,unicode_escape()进行Python编码和解码
问题内容:
我正在尝试使用该codecs
库在python中编码和解码文本。这是我的代码:
>>> import codecs
>>> codecs.unicode_escape_encode('my Text')
(b'my Text', 7)
那我该如何拿回原始代码codecs.unicode_escape_decode()
呢?我试过了:
>>> codecs.unicode_escape_decode("(b'my Text', 7)")
("(b'my Text', 7)", 15)
却没有'my text'
。如果您需要更多详细信息,请告诉我。
问题答案:
我认为您将错误的内容粘贴回了该函数。正确的用法是:
>>> import codecs
>>> codecs.unicode_escape_encode('my Text')
(b'my Text', 7)
>>> codecs.unicode_escape_decode(b'my Text')
('my Text', 7)
实际上,一个更相关的示例是:
>>> codecs.unicode_escape_encode('Hëllö')
(b'H\\xebll\\xf6', 5)
>>> codecs.unicode_escape_decode(b'H\\xebll\\xf6')
('Hëllö', 11)
在编码版本和解码版本中,“正常”字母都是1:1相同。“特殊”字母有时占用一个以上的字节,因此以其十六进制数字以编码格式表示,例如以编码形式\\xeb
表示ë
。
此处的更多信息:https :
//en.wikipedia.org/wiki/UTF-8