从非ASCII字符串解码Python3中的转义Unicode

本教程将介绍从非ASCII字符串解码Python3中的转义Unicode的处理方法,这篇教程是从别的地方看到的,然后加了一些国外程序员的疑问与解答,希望能对你有所帮助,好了,下面开始学习吧。

从非ASCII字符串解码Python3中的转义Unicode 教程 第1张

问题描述

我现在已经寻找了几个小时,以找到一种方法来完全逆转str.encode调用的结果,如下所示:

"testäch基er".encode("cp1252", "backslashreplace")

结果为

b'testxe4chu57faer'

现在我想用

将其转换回来

b'testxe4chu57faer'.decode("cp1252")

我得到

'testächu57faer'

那么我怎么取回我的基?我通过使用decode("unicode-ESCRIPE")来实现这一点(它在本例中可以使用),但这假设使用is8859-1而不是cp1252编码的字节,因此介于80和9F之间的任何字符都是错误的。

推荐答案

当我问这个问题时,我还是个新手。现在我明白了,这些后备机制只是用于处理意外错误,而不是用于保存和恢复数据。如果您确实需要一种简单可靠的方法来在ASCII中对单个Unicode字符进行编码,请查看quoteunquote模块中的quoteunquote函数。

好了关于从非ASCII字符串解码Python3中的转义Unicode的教程就到这里就结束了,希望趣模板源码网找到的这篇技术文章能帮助到大家,更多技术教程可以在站内搜索。