¿Cómo hago la autovivificación avanzada de hash de Python?
Esta pregunta se trata de implementar la autovivificación completa de Perl en Python. Sé que se hicieron preguntas similares antes y hasta ahora la mejor respuesta está en "¿Cuál es la mejor manera de implementar diccionarios anidados en Python?". Sin embargo, estoy buscando hacer esto:
a['x']['y'].append('z')
sin declarara['x']['y'] = []
primero, o mejor dicho, no declarara['x'] = {}
ya sea. (Nota en Perl que puedes hacerpush @{$a->{x}{y}}, 'z';
.)
Lo sédict
ylist
las clases no se mezclan, así que esto es difícil, pero estoy interesado en ver si alguien tiene una solución ingeniosa que probablemente implique crear una clase heredada dedict
pero definió un nuevoappend
método en él?
También sé que esto podría desanimar a algunos puristas de Python que me pedirán que me quede con Perl. Pero, incluso para un desafío, me gustaría ver algo.