如何将字符串转换为“ gbk”编码?

问题描述

我正在尝试使用Python将一些中文单词转换为字节。例如,我有这个词:自,我尝试通过以下方式将其转换:

"自".encode()

但是我只能得到这个:

b'\xe8\x87\xaa'

在网络上看,我认为它需要使用“ gbk”编码进行转换,但是如果我尝试这样做,我只会得到:

b'\xd7\xd4'

我需要将其转换为此:

\u81ea

在这里您可以看到对我正在谈论的字符的引用:https://charbase.com/81EA

解决方法

\u81ea是一个Unicode代码点,不是gbk字节。

您可以使用以下方法转换为此:

"自".encode("unicode_escape")
# b'\\u81ea'

b'\xd7\xd4'是该代码点的gbk编码,b'\xe8\x87\xaa'是同一代码点的utf-8编码。