Ho una serie di classi Python in un file. Alcune classi fanno riferimento ad altre.Python ha prototipi di classe (o dichiarazioni di inoltro)?
Il mio codice è qualcosa di simile:
class A():
pass
class B():
c = C()
class C():
pass
Cercando di correre che, ottengo NameError: name 'C' is not defined
. Giusto, ma c'è un modo per farlo funzionare, o devo riordinare manualmente le mie classi per sistemare? In C++, posso creare un prototipo di classe. Python ha un equivalente?
(In realtà sto giocando con i modelli Django, ma ho cercato di non complicare le cose).
FWIW, è chiamato http://en.wikipedia.org/wiki/Forward_declaration, non prototype (http://en.wikipedia.org/wiki/Prototype-based_programming). – Constantin
Si chiama prototipo di funzione in Kernighan e Ritchie, da dove lo ricordo. – Mat
Appena controllato, nessun "prototipo di classe" nella mia copia K & R;) – Constantin