Hombre, podrías hacer que el objeto fuera serializable. Mirate esta doc. http://docs.python.org/2/library/pickle.html
O busca por google articulos sobre "python serialization". ;) El 17 de noviembre de 2012 15:09, Benito Rodríguez Arcos <[email protected]>escribió: > El 17/11/2012 14:11, "Quique Porta" <[email protected]> escribió: > >> Para saber si una clase hereda de otra, lo puedes averiguar con >> issubclass (http://docs.python.org/2/library/functions.html#issubclass). >> >> if issubclass(MyClase, MegaClase): >> # codigo si se cumple >> >> Y luego para que deban reimplementar los métodos podrias hacer algo así: >> >> class MegaClase(objetc): >> >> def metodo_1(self): >> raise Exception("Debes de re-definir el metodo_1.") >> >> def metodo_2(self): >> raise Exception("Debes de re-definir el metodo_2.") >> >> O importando inspect >> >> y obteniendo el listado de los "members" >> >> inspect.getmembers(MyClase, predicate=inspect.ismethod) >> >> Te devolverá una lista. >> >> Lo puedes ver aquí: >> http://docs.python.org/2/library/inspect.html#inspect.getmembers >> >> Un Saludo. >> > > Supongo que esto valdría, pero tendría que ejecutar el código que suben > los usuarios a la web.... > > >> >> El 17 de noviembre de 2012 13:57, Benito Rodríguez Arcos < >> [email protected]> escribió: >> >>> Hola a todos. >>> >>> Estoy haciendo una aplicación web donde los usuarios suben un código >>> python. La he integrado con pylint para chequear la syntaxis. Pero me >>> gustaría chequear otras propiedades del código, aparte de ésta. >>> >>> Me explico, quiero que el código de los usuarios sea una clase que >>> herede de otra y que los usuarios implementen una serie de métodos. Un >>> ejemplo sería algo así. >>> >>> import MegaClase >>> >>> class MyClase(MegaClase): >>> def megaclase_method1(self): >>> print "pepe" >>> >>> def megaclase_method2(self): >>> return 1 + 2 >>> >>> def myclase_method(self): >>> return "dooo" >>> >>> ¿como prodía chequear que la clase que sube el usuario hereda de >>> MegaClase e implementa una serie de métodos? >>> >>> Gracias. >>> >>> ------- >>> *Benito Rodriguez Arcos* >>> >>> _______________________________________________ >>> Python-es mailing list >>> [email protected] >>> http://mail.python.org/mailman/listinfo/python-es >>> FAQ: http://python-es-faq.wikidot.com/ >>> >>> >> >> _______________________________________________ >> Python-es mailing list >> [email protected] >> http://mail.python.org/mailman/listinfo/python-es >> FAQ: http://python-es-faq.wikidot.com/ >> >> > _______________________________________________ > Python-es mailing list > [email protected] > http://mail.python.org/mailman/listinfo/python-es > FAQ: http://python-es-faq.wikidot.com/ > >
_______________________________________________ Python-es mailing list [email protected] http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
