¿Por defecto multinivel con profundidad variable?

Tengo una lista grande como:

[A][B1][C1]=1
[A][B1][C2]=2
[A][B2]=3
[D][E][F][G]=4

Quiero construir un dict multinivel como:

A
--B1
-----C1=1
-----C2=1
--B2=3
D
--E
----F
------G=4

Sé que si uso defaultdict recursivo puedo escribirtable[A][B1][C1]=1, table[A][B2]=2, pero esto solo funciona si codifico esas instrucciones de inserción.

Mientras analizo la lista, no sé cuántos [] necesito de antemano para llamar atable[key1][key2][...].

Respuestas a la pregunta(10)

Su respuesta a la pregunta