У меня есть список подстановок полей:Равенство словарей
>>> l = ['A', 'C', 'Z', 'M']
я должен был бы проверить равенство 2 словарей в этом списке поиска:
>>> d1 = {'A': 3,'F': 4,'Z': 1}
>>> d2 = {'B': 0,'A': 3,'C': 7}
Испытание равенство для любого поля ' x 'в списке выполняется, если выполнено одно из следующих условий:
1.if' x 'отсутствует ни в одном из дефотов
2.if' x 'присутствует, а d1 [x] == d2 [ x]
Функция равенства вернет соответствие ТОЛЬКО ЕСЛИ все поля в списке будут выполнены в соответствии с приведенными выше условиями.
Итак, для вышеуказанных dicts - Z не удался, C не удался, A преуспел, M преуспел.
Однако тест равенства для диктонов должен сообщать об ошибке.
Какой был бы самый короткий способ достичь этого?
Я отредактировал мой ответ, см если то, что вы ищете – AliBZ
я искал короткое замыкание на первую неудачу с чем-то, как и любыми и понимание – IUnknown
@AliBZ: Нет, ответ Ури - это тот ответ, который он ищет. Ответ Ашвина плох, потому что он выполняет линейный поиск для поиска наличия ключа. –