我正在尝试使用 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
代表编码形式的 ë
。
关于Python-使用编解码器进行编码和解码,unicode_escape(),我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33032035/