Domanda

Ho uno script dove faccio alcune cose magia per caricare dinamicamente un modulo e creare un'istanza della prima classe che trovate nel modulo. Ma non posso usare types.ClassType più in Python 3. Qual è il modo corretto di farlo ora?

È stato utile?

Soluzione

ho capito. Sembra che le classi sono di tipo "tipo". Ecco un esempio di come distinguere tra le classi e altri oggetti in fase di esecuzione.

>>> class C: pass
... 
>>> type(C)
<class 'type'>
>>> isinstance(C, type)
True
>>> isinstance('string', type)
False

Altri suggerimenti

E 'stato utilizzato per classi classiche . In Python 3 sono andato. Immagino che si potrebbe usare qualcosa come:

issubclass(ClassName, object)
Autorizzato sotto: CC-BY-SA insieme a attribuzione
Non affiliato a StackOverflow
scroll top