Python:西里尔字母处理

use*_*703 4 python string unicode json cyrillic

b'\\u041a\\u0435\\u0439\\u0442\\u043b\\u0438\\u043d\\u043f\\u0440\\u043e我从 API返回了这些数据。这些数据是俄语的,我确信这一点。我猜这些值是西里尔字母的 unicode 表示形式?

返回的数据是一个字节数组。

如何将其转换为可读的西里尔字符串?我几乎需要一种方法将其转换为可读的人类文本。

编辑:是的,这是 JSON 数据。忘记说了,抱歉。

Mar*_*ers 5

您可能有 JSON 数据;JSON 使用\\uhhhh转义序列来表示 Unicode 代码点。在unicode上使用该json.loads()函数来生成 Python 字符串:

\n\n
import json\n\nstring = json.loads(data.decode(\'utf8\'))\n
Run Code Online (Sandbox Code Playgroud)\n\n

UTF-8是默认的JSON编码;检查您的响应标头(如果您使用的是基于 HTTP 的 API)以查看是否使用了不同的编码。

\n\n

演示:

\n\n
>>> import json\n>>> json.loads(b\'"\\\\u041a\\\\u0435\\\\u0439\\\\u0442\\\\u043b\\\\u0438\\\\u043d\\\\u043f\\\\u0440\\\\u043e"\'.decode(\'utf8\'))\n\'\xd0\x9a\xd0\xb5\xd0\xb9\xd1\x82\xd0\xbb\xd0\xb8\xd0\xbd\xd0\xbf\xd1\x80\xd0\xbe\'\n
Run Code Online (Sandbox Code Playgroud)\n