Python JSON загружает/сбрасывает разрывы Unicode?
Сбрасывая строку, содержащую символы юникода, поскольку json создает странные escape-последовательности unicode:
text = "⌂⚘いの法嫁"
print(text) # output: ⌂⚘いの法嫁
import json
json_text = json.dumps(text)
print(json_text) # output: "\u2302\u2698\u3044\u306e\u6cd5\u5ac1"
Я бы хотел получить этот вывод:
"⌂⚘いの法嫁"
Как я могу сбросить символы Unicode в качестве символов вместо escape-последовательностей?
Ответы
Ответ 1
Вызовите json.dumps
с помощью ensure_ascii=False
:
json_string = json.dumps(json_dict, ensure_ascii=False)
В Python 2 возвращаемое значение будет unicode
вместо str
, поэтому вы можете захотеть encode
его перед тем, как сделать что-нибудь еще с ним.