@LevSvl08

Как заменить значения вложенных элементов в json с помощью Pyhthon?

У меня есть файл json со следующим содержимым:
{
  "cmp": "tab",
  "items": [
    {
      "cmp": "subtable",
      "pageSize": "50",
      "subsetName": "INVALID_SUBSET",
      "caption": "Классы нештатных ситуаций",
      "className": "ax-table-invalid_subset",
      "items": [
        {
          "cmp": "group",
          "label": "Подробности",
          "size": "2",
          "items": [
            {
              "cmp": "field",
              "type": "input",
              "label": "Код",
              "src": "1491379509394",
              "fld": "description"
            },
            {
              "cmp": "field",
              "type": "input",
              "label": "Наименование",
              "src": "1558099011429",
              "fld": "short_name"
            },
            {
              "cmp": "field",
              "type": "input",
              "label": "Документ",
              "src": "maintab_attr6",
              "fld": "odk_document_name"
            },
            {
              "cmp": "field",
              "type": "input",
              "label": "Полное наименование",
              "src": "1478701115982",
              "fld": "full_name"
            }
          ]
        }
      ],
      "buttons": [
        {
          "cmp": "button",
          "label": "Новая строка",
          "action": "addrow",
          "sopt": "insert"
        }
      ]
    }
  ]
}


Мне нужно заменить "INVALID_SUBSET" и "ax-table-invalid_subset" на другие значения. Я понимаю, что нужна рекурсивная функция, которая позволит добраться до ключей и изменить их значения, но сделать так.
  • Вопрос задан
  • 132 просмотра
Пригласить эксперта
Ответы на вопрос 1
Viji
@Viji
DevOps Engineer
# importing the module
import json
 
# Opening JSON file
with open('data.json') as json_file:
    data = json.load(json_file)


получите dictionary data, а уж с ним будете работать, менять итд
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Войти через центр авторизации
Похожие вопросы