Unicode 转义 Python

问题描述

我正在从 API 检索用户名,并且得到如下值:

\u00e2\u0098\u0085Random Name\u00e2\u0098\u0085 <3

当我尝试打印出来时,我最终得到:

★Random Name★ <3

但它应该是:

★Random Name★ <3

\u00e2\u0098\u0085 似乎是 的构造函数,它看起来像 unicode 转义序列,但显然转换中出了点问题。
需要一些关于如何部分转义字符串的帮助。

编辑: (其他细节)
我正在尝试创建一个不和谐机器人,它会根据检索到的玩家信息定期更新角色。

上面的第一个正是我从 API 中得到的,我无法做任何事情来改变它

★Random Name★ <3 是在服务器中发布的消息。
我确定不和谐支持字符集,因为我可以直接粘贴用户名而不会出现问题

data = json.loads(response.text) 用于解析和存储响应
await message.channel.send(f"Name: {data['name']}") 用于发送消息

send()discord.py函数部分,用于在特定频道中发送消息

解决方法

print('\u00e2\u0098\u0085Random Name\u00e2\u0098\u0085 <3'.encode('latin').decode())

结果:

★Random Name★ <3
,

不查看代码,我们无法给出具体答案,但您应该像这样编码:

username = (API call)
username = username.encode('utf-8')
print(username)

您的代码可能有所不同,但由于我们无法访问它,因此这是我们所能提供的最好的代码。