Existe-t-il un moyen de faire d'un defaultdict également la valeur par défaut pour le defaultdict? (ie defaultdict récursif de niveau infini?)
Je veux pouvoir faire:
x = defaultdict(...stuff...)
x[0][1][0]
{}
Donc, je peux le faire x = defaultdict(defaultdict)
, mais ce n'est qu'un deuxième niveau:
x[0]
{}
x[0][0]
KeyError: 0
Il existe des recettes qui peuvent le faire. Mais cela peut-il être fait simplement en utilisant les arguments normaux defaultdict?
Notez que cela demande comment faire un defaultdict récursif de niveau infini, donc il est distinct de Python: defaultdict de defaultdict? , qui était comment faire un defaultdict à deux niveaux.
Je finirai probablement par utiliser le modèle de groupe , mais quand j'ai réalisé que je ne savais pas comment faire cela, cela m'a intéressé.