словарь yaml multi вложен и словарь python

Я новичок в yaml, вывод находится в ожидаемом формате, но задается вопросом, есть ли лучший способ построить ниже вложенные объекты в yaml.

import yaml yaml.load (""" test1: a: a1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 b1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 c1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 b: a1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 b1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 c1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 c: a1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 b1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 c1: a2: a3: 0 b3: 0 c3: 0 b2: a3: 0 b3: 0 c3: 0 c2: a3: 0 b3: 0 c3: 0 """) 

вывод:

 'test1': {'a': {'a1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}, 'c1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}, 'b1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}}, 'c': {'a1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}, 'c1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}, 'b1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}}, 'b': {'a1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}, 'c1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}, 'b1': {'c2': {'c3': 0, 'a3': 0, 'b3': 0}, 'a2': {'c3': 0, 'a3': 0, 'b3': 0}, 'b2': {'c3': 0, 'a3': 0, 'b3': 0}}}}} 

Я могу подумать о двух способах, которые помогут вам напечатать на ямле.

Используйте короткий синтаксис сопоставления:

 test1: a: a1: a2: {a3: 0, b3: 0, c3: 0} b2: {a3: 0, b3: 0, c3: 0} c2: {a3: 0, b3: 0, c3: 0} b1: a2: {a3: 0, b3: 0, c3: 0} b2: {a3: 0, b3: 0, c3: 0} c2: {a3: 0, b3: 0, c3: 0} c1: a2: {a3: 0, b3: 0} 

Использовать псевдонимы:

 entry: &aliasentry a2: {a3: 0, b3: 0, c3: 0} b2: {a3: 0, b3: 0, c3: 0} c2: {a3: 0, b3: 0, c3: 0} test1: a: a1: *aliasentry b1: *aliasentry c1: {a2: {a3: 0, b3: 0}}