删除转义字符并获取字符串的一部分

remove the escape character and get part of string

我有一个问题字符串看起来像这样 '{"type":"2","question_id":"\u5c0d\u65bc\u7d93\u71df\u4e00\u6bb5\u611f\u60c5\uff0c\u59b3\u89ba\u5f97\u6700\u91cd\u8981\u7684\u95dc\u9375\u662f\u4ec0\u9ebc\u5462\uff1f","text":"\u5fcd \u8b93\u5c0d\u65b9"}' 我只想要文本部分,即“\u5fcd \u8b93\u5c0d\u65b9”, 但需要清理它才能打印出来, 有什么建议么? 谢谢

在 unicode-escape 解码后字符串看起来像 json:

>>> s = '{"type":"2","question_id":"...","text":"\u5fcd \u8b93\u5c0d\u65b9"}'
>>> s.encode().decode('unicode-escape')  # `encode` is not needed in python 2.x
'{"type":"2","question_id":"對於經營一段感情,妳覺得最重要的關鍵是什麼呢?","text":"忍 讓對方"}'

您可以使用 json.loads 反序列化 json:

>>> import json
>>> print(json.loads(s.encode().decode('unicode-escape'))['text'])
'忍 讓對方'