J'aimerais pouvoir faire ça :
g = Graph()
with g:
c = Variable(30.0)
assert c.graph is g
Alors qu'actuellement je sais juste faire ça :
g = Graph()
with g:
c = Variable(30.0)
g.add(c)
print(g.variables)
(et là ça m'affiche la variable c)
Je suis obligé d'implémenter une méthode "add" dans ma classe Graph, en utilisant les méthodes de context manager usuelles de python (__enter__ et __exit__). Quelqu'un sait-il comment je pourrai m'en affranchir pour "lier" Variable et Graph comme dans mon premier snippet ?
Edit: la solution que j'ai trouvé est d'utiliser le graphe comme une variable globale, je sais pas si on peut faire plus propre.