[Python] mod_python ed il giusto handler

Manlio Perillo manlio_perillo a libero.it
Ven 18 Ago 2006 21:45:25 CEST


Andrea Giammarchi ha scritto:
> [...]
>> Cosa vuol dire se esiste una classe? Se io scrivo "SuperPippo" in un
>> file Python e non è definito da nessuna parte avrai un NameError.
> runtime .... ho una stringa
> 
> pippo = "Pippo"
> 
> come sapere se la classe Pippo è presente e già definita oppure no ?
> 
> class_exsists(pippo) ... esiste qualcosa del genere che restituisca un
> True o un False ?
> 

L'object model di Python non è banale, ti conviene studiartelo meglio.

Una test può essere:

pippoObject = globals().get(pippo)
if pippoObject is not None and pippoObject.__class__ is not type:
  # probabilmente pippoObject è una classe


Questo vale per le classi nuovo stile.
Per quelle vecchio stile una classe non ha l'attributo __class__.

Nel modulo types è presente un ClassType, ma funziona solo per le classi
vecchio stile.


Comunque io non mi fiderei di questo codice.




Saluti  Manlio Perillo


Maggiori informazioni sulla lista Python