Python - Zugriff auf Werte, die in Wörterbüchern verschachtelt sind
Ich habe ein Wörterbuch, das Wörterbücher enthält, die auch Wörterbücher enthalten können, z.
dictionary = {'ID': 0001, 'Name': 'made up name', 'Transactions':
{'Transaction Ref': 'a1', 'Transaction Details':
{'Bill To': 'abc', 'Ship To': 'def', 'Product': 'Widget A'
...} ...} ... }
Zur Zeit packe ich aus, um die 'Rechnung an' für ID 001, 'Transaktionsreferenz' a1 wie folgt zu erhalten:
if dictionary['ID'] == 001:
transactions = dictionary['Transactions']
if transactions['Transaction Ref'] == 'a1':
transaction_details = transactions['Transaction Details']
bill_to = transaction_details['Bill To']
Ich kann nicht anders, als zu denken, dass dies ein wenig klobig ist, insbesondere die letzten beiden Zeilen - ich habe das Gefühl, dass etwas in der Art von Folgendem funktionieren sollte:
bill_to = transactions['Transaction Details']['Bill To']
Gibt es einen einfacheren Ansatz zum Drilldown in verschachtelte Wörterbücher, ohne in Zwischenvariablen entpacken zu müssen?