2016-08-11 23:17 GMT+02:00 Giuliano Curti <giulian...@gmail.com>: > ciao, > intanto grazie della risposta; >> [...] > sto implementando una libreria per trattare i grafi; è un esercizio a > scopo autodidattico da cui avrei voluto tenervi indenni, ma..... > ovviamente qualsiasi hint anche sullo specifico dei grafi è benvenuto; > tornando al dunque: > > allora, ho generato la classe Graph() che ha una certa struttura dati > ed implementa alcuni metodi; argomento molto legato, ma non > coincidente, è quello dei grafi orientati ed ho generato la classe > Digraph() che si basa sulla prima, ne incrementa la struttura dati > (aggiunge delle liste non necessarie per i grafi), eredita i metodi > della precedente ed implementa alcuni metodi specifici, ad es. sui > flussi; > > orbene, per un (noto) teorema una forma di connettività dei grafi > (siamo nella classe Graph()) corrisponde ad una forma particolare di > calcolo di flusso (metodo disponibile nella classe Digraph()), da quì > la domanda di come attingere a metodi della classe derivata Digraph() > all'interno della classe Graph(); >
Dimenticando per un momento le classi e le loro relazioni, vuoi calcolare una proprietà X di un grafo semplice, e questa proprietà può essere calcolata tramite la proprietà Y di un grafo orientato costruito a partire dal grafo semplice. In questo caso la cosa più semplice da fare mi sembra: class Graph: def X(self): g = build_digraph(self) return g.Y() Su come implementare build_digraph si potrebbe aprire probabilmente un thread separato, dato che immagino tocca parti private dell'implementazione di Graph e magari anche DiGraph. Ciao Manlio _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python