Парсинг Json с разнородными объектами (с объектами, у которых разное количество свойств)

Курдль

Новичок
Пользователь
Апр 13, 2023
7
0
1
Привет!
Необходимо обработать Json, содержащий массив объектов, в котором у объектов переменный состав свойств.
Например вот окончания 2-х объектов:
JSON:
          "usb.bInterfaceClass": "0xff"
        },
        "usb.capdata": "02:0e:00:2e:25:00:00:a0:0f"
      }
JSON:
          "usb.bInterfaceClass": "0xff"
        }
      }
Как видно, у последнего объекта нет поля "usb.capdata" и, естественно, Python, натыкаясь на него, генерит ошибку:
capdata = lyr["usb.capdata"]
~~~^^^^^^^^^^^^^^^
KeyError: 'usb.capdata'

Что порекомендуете? try-except?

(дополнительные параметры: ОС Win10, Python3.11,среда VSCode)
 

robisho

Активный пользователь
Пользователь
Окт 19, 2020
151
26
28
метод get для словаря возвращает None, если ключа не оказалось. json - это словарь. следовательно dict.get('usb.capdata') вернет значение, если такой ключ есть или вернет None. без генерации исключения.
 

Форум IT Специалистов