有人可以向我解释如何使用 unicode_escape 作为 python 3.6 中的编码参数吗?

cod*_*one 5 python encode decode dataframe unicode-escapes

我每天都使用大型 pandas 数据帧,它获取我们从网络本地的 webAPI(xml 编码为 utf-8)解析的馈送信息。

在我提供数据帧并导出为 csv 文件后,我开始出现编码错误(本地计算机是 cp1252),在过去的几周里我不得不处理这个错误。

我最终找到的解决方案是在tangfucious的回复下[这里][1]。

    df['crumbs'] = df['crumbs'].map(lambda x: x.encode('unicode-escape').decode('utf-8'))
Run Code Online (Sandbox Code Playgroud)

一行代码,接受一个字符串并使用 对其进行编码.encode=('unicode_escape'),然后解码为 utf-8。

有人可以向我解释一下这段代码是如何工作的吗?不幸的是,我是一个新手,所以我无法对他的回复发表评论

unicode-escape 的幕后目的是什么(除了明显的,向每个 unicode 代码点添加 \ )。这对解码为 utf-8 有何影响?为什么这是必要的?使用相同的编码进行编码/解码不是总是更好吗?

使用“unicode_escape”还有其他用途吗?