Python json.dumps() 没有正确编码表情符号

Python json.dumps() doesn't encode emojis properly

为什么 json.dumps() 将表情符号编码为 un​​icode?请参阅下面的代码和输出:

import json
obj = {"key": "hello "}
print(obj)

{'key': 'hello '}

print(json.dumps(obj))

'{"key": "hello \ud83d\ude00"}'

我已经尝试了 print(json.dumps(obj)).encode('utf-8') 和一些变体(.decode()...),但它并没有改变输出。我正在开发 Python 3.6.1

print(json.dumps(obj, ensure_ascii=False))

但是,ASCII 变体更便于携带,因为几乎可以保证您不会遇到编码问题。 Docs