Sprawdź zagnieżdżone wartości słownika?
Aby uzyskać dużą listę zagnieżdżonych słowników, chcę sprawdzić, czy zawierają one klucz. Każdy z nich może mieć lub nie jeden z zagnieżdżonych słowników, więc jeśli zapętlę to wyszukiwanie, wszystkie z nich powodują błąd:
for Dict1 in DictionariesList:
if "Dict4" in Dict1['Dict2']['Dict3']:
print "Yes"
Moim dotychczasowym rozwiązaniem jest:
for Dict1 in DictionariesList:
if "Dict2" in Dict1:
if "Dict3" in Dict1['Dict2']:
if "Dict4" in Dict1['Dict2']['Dict3']:
print "Yes"
Ale to ból głowy, brzydki i prawdopodobnie mało efektywny. Jaki byłby właściwy sposób zrobienia tego w sposób pierwszy, ale bez zgłaszania błędu, gdy słownik nie istnieje?