Python Сохранение файлов JSON в формате UTF-8
Я пытаюсь вывести некоторые символы UTF-8 в файл JSON.
Когда я сохраняю файл, они пишутся так:
{"some_key": "Enviar invitaci \ u00f3n privada"}
Вышеуказанное действует и работает. Когда я загружаю файл и печатаю 'some_key', он отображает "Enviar invitación privada" в терминале.
Можно ли в любом случае записать файл JSON с "some_key" в качестве закодированной версии, например так?
{"some_key": "Enviar invitación privada"}
2 ответа
Задавать ensure_ascii
в False
:
>>> print json.dumps(x, ensure_ascii=False)
{"some_key": "Enviar invitación privada"}
Используя Python 3.4.3 здесь и используя dump()
вместо dumps()
:
with open("example.json","w", encoding='utf-8') as jsonfile:
json.dump(data,jsonfile,ensure_ascii=False)
это стандартный способ записи JSON в кодированный файл UTF-8.
Если вы хотите использовать экранированные кодовые точки вместо символов в вашем файле, установите ensure_ascii=True
, Это пишет, например, евро-символ €
как \u20ac
прямо в ваш файл.