Кодировка в json и python
Содержимое файла Dates_for_admin.json выглядит так:
{
"Количество пользователей": 5
}
Там очень много букв и бэкслешов. А содержимое файла ненужное.py выглядит так:
import json
with open("Dates_for_admin.json","r",encoding="utf-8") as file:
json_dict = json.load(file)
json_dict["Количество пользователей"] += 1
with open("Dates_for_admin.json","w",encoding="utf-8") as file:
json.dump(json_dict,file)
После запуска ненужное.py содержимое файла Dates_for_admin.json примерно выглядит так (если не ошибаюсь,это вроде кодировка юникод):
{"\u047\u036e\u043": 6}
Там очень много букв,цифр и бэкслешов. Как сделать так,чтоб файл Dates_for_admin.json выглядит нормально,то есть так:
{
"Количество пользователей": 6
}
И чтобы он не выглядел "по-юникодски"?
Ответы (1 шт):
Автор решения: McClawdy
→ Ссылка
Используйте ensure_ascii=False
encoding="utf8" пишется без "-"
import json
with open("Dates_for_admin.json","r",encoding="utf8") as file:
json_dict = json.load(file, ensure_ascii=False)
json_dict["Количество пользователей"] += 1
with open("Dates_for_admin.json","w",encoding="utf8") as file:
json.dump(json_dict,file, ensure_ascii=False)