Objektähnlicher Attributzugriff für verschachteltes Wörterbuch

Ich verwende ein Paket, das ein verschachteltes Wörterbuch zurückgibt. Es fühlt sich umständlich an, mit der Dictionary-Syntax auf dieses Rückgabeobjekt in meinen Klassenmethoden zuzugreifen, wenn sich alles andere in der Objekt-Syntax befindet. Durch die Suche bin ich zu den Bundle- / Neobunch-Paketen gekommen, die das zu erreichen scheinen, wonach ich suche. Ich habe auch angeregte namedtupel gesehen, aber diese unterstützen verschachtelte Attribute nicht leicht und die meisten Lösungen basieren auf der Verwendung von Wörterbüchern innerhalb des namedtupel zum Verschachteln.

Was wäre ein natürlicherer Weg, dies zu erreichen?

data = {'a': 'aval', 'b': {'b1':{'b2a':{'b3a':'b3aval','b3b':'b3bval'},'b2b':'b2bval'}} }

print(data['b']['b1']['b2a']['b3b'])  # dictionary access
# print(data.b.b1.b2a.b3b)  # desired access

import neobunch
data1 = neobunch.bunchify(data)
print(data1.b.b1.b2a.b3b)

Antworten auf die Frage(4)

Ihre Antwort auf die Frage