Python json.dumps () неправильно кодирует эмодзи - PullRequest
0 голосов
/ 05 июля 2018

Почему json.dumps () кодирует эмодзи в юникод? Смотрите код и вывод ниже:

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

{'ключ': 'привет ?'}

print(json.dumps(obj))

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

Я пробовал print(json.dumps(obj)).encode('utf-8') и некоторые варианты (.decode() ...), но это не сильно изменило вывод. Я работаю над Python 3.6.1

1 Ответ

0 голосов
/ 05 июля 2018
print(json.dumps(obj, ensure_ascii=False))

Однако вариант ASCII более переносим, ​​поскольку вы почти гарантированы, что у вас не возникнет проблем с кодированием. Docs

...