[Python] Come ottenere la lista delle classi contenute in un modulo
enrico franchi
enrico.franchi a gmail.com
Lun 27 Feb 2012 18:49:06 CET
2012/2/27 Marco Beri <marcoberi a gmail.com>:
> 2012/2/27 Daniele Zambelli <daniele.zambelli a gmail.com>
>>
>> Cioè vorrei ottenere la lista dell classi contenute in un modulo.
>> Scusate per la lunghezza e grazie dell'attenzione.
>
>
> Con un file c.py fatto così:
>
> class X:
> pass
>
> class Y:
> pass
>
> Z = {}
>
> W = 3
>
>
> Con questo codice:
>
> import c
> from types import ClassType
> for name in dir(c):
> if type(getattr(c, name)) == ClassType:
> print name
>
>
> Ottieni questo output:
>
> X
> Y
>
>
> Va bene?
In [22]: cat c.py
import abc
class A(object):
pass
class B:
pass
class C(object):
__metaclass__ = abc.ABCMeta
class Meta(type):
pass
class D(object):
__metaclass__ = Meta
In [23]: cat prova.py
import c
from types import ClassType
for name in dir(c):
if type(getattr(c, name)) == ClassType:
print name
In [24]: %run prova.py
B
--
.
..: -enrico-
Maggiori informazioni sulla lista
Python