Я хочу переформатировать файл JSON таким образом, чтобы определенные объекты (словари) с определенными ключами находились в одной строке.
Например, любой объект с ключом name
должен отображаться в одной строке:
{
"this": "that",
"parameters": [
{ "name": "param1", "type": "string" },
{ "name": "param2" },
{ "name": "param3", "default": "@someValue" }
]
}
Файл JSON создан и содержит данные о языке программирования. Однострочные определенные поля значительно упрощают визуальный осмотр / просмотр.
Я пытался переопределить python json.JSONEncoder
, чтобы превратить соответствующий dict
в string
перед записью, только для реализации кавычек "
внутри строки снова выводятся в результирующем JSON-файле, опровергая мою цель.
Я тоже посмотрел на jq
, но не смог придумать, как это сделать. Я нашел похожие вопросы и решения, основанные на длине строки, но мои требования проще, и я не хочу, чтобы другие более короткие строки были изменены. Только определенные объекты или поля.