Pythonic словарь обхода - PullRequest
       11

Pythonic словарь обхода

1 голос
/ 16 марта 2011

Я часто нахожусь в ситуациях, когда мне нужно пройти и разобрать полусложную структуру JSON.Во время обхода ожидаются определенные словари keys, и их values необходимо соответствующим образом сопоставить с каким-либо объектом (foo.__dict__).

Любые оставшиеся ключи / значения, которые не были явно отображены на объекте (foo.additional_attributes(**remaining)), должны быть изолированы и поэтому могут обрабатываться как различные атрибуты ключа / значения.Сочетание встроенных функций, упрощающих этот тип обхода, отображения и изоляции, делающих его более динамичным и Pythonic?

1 Ответ

4 голосов
/ 16 марта 2011

Вы можете использовать pop метод словарей:

for key in expected_keys:
    foo.__dict__[key] = d.pop(key)
foo.additional_attributes(**d)
...