Извините, если подобный вопрос уже задавался, хотя я не смог найти ответы после всестороннего поиска в Google.Я боролся с экспортом следующего словаря в файл JSON с ключами, упорядоченными в порядке убывания.Файл должен быть доступен для чтения вне Python, поэтому pickle не может быть использован.
Я использую Python3.7, и я пытался использовать библиотеки simplejson и json, чтобы выгрузить вложенный dict в файл json,хотя были неудачными.Pickle, похоже, работал, хотя он экспортирует двоичный файл, который не читается за пределами Python.Dict называется «существующим».
with open('Entries_2.json', 'w') as outfile:
simplejson.dump(existing,outfile,item_sort_key=simplejson.simple_first)
outfile.close()
with open('Entries.json', 'w') as outfile:
json.dump(existing, outfile, sort_keys=True, indent=4)
outfile.close()
Оба вышеуказанных метода дают одинаковый результат:
{
"Entries": {
"2019/01/23": {
"Result-9595905890": {
"count": 4,
"time": "2019/01/23 03:32:32"
}
},
"2019/01/24": {
"Result-9607169713": {
"count": 21,
"time": "2019/01/24 03:31:34"
},
"Result-9611777668": {
"count": 23,
"time": "2019/01/24 12:58:49"
}
},
"2019/01/25": {
"Result-9618433556": {
"count": 21,
"time": "2019/01/25 03:31:27"
}
}
}
}
Хотя параметр reverse = True не работает ни в одном из параметров дампа.Что мне нужно:
{
"Entries": {
"2019/01/25": {
"Result-9618433556": {
"count": 21,
"time": "2019/01/25 03:31:27"
}
},
"2019/01/24": {
"Result-9607169713": {
"count": 21,
"time": "2019/01/24 03:31:34"
},
"Result-9611777668": {
"count": 23,
"time": "2019/01/24 12:58:49"
}
},
"2019/01/23": {
"Result-9595905890": {
"count": 4,
"time": "2019/01/23 03:32:32"
}
}
}
}
Кто-нибудь сталкивался с подобной борьбой?