-2

我发现它是TWO HEARTS 这里的一个字符。我试图解码它:

a = '\ud83d\udc95'
a.encode('utf-8').decode('utf-8')
UnicodeEncodeError: 'utf-8' codec can't encode characters in position 0-1: surrogates not allowed

如何获得正确的符号?

谢谢你。

4

3 回答 3

2

您链接到的页面告诉您

Python Escape u'\U0001f495'

用它:

>>> u'\U0001f495'
''
于 2018-04-11T08:22:10.877 回答
2

使用json模块帮助您解决不同的Unicode.

import json

a = '\ud83d\udc95'
m = json.dumps({"k": a})
print(json.loads(m)["k"])  # 
于 2018-04-12T08:24:47.980 回答
0

我无法发表评论,所以这里是如何转换的答案"\uD83D\uDC95".encode('utf-16', 'surrogatepass').decode('utf-16').encode('unicode_escape').decode('utf-8')

于 2021-09-28T02:04:17.530 回答