Re: [Python] Decoratori a runtime su classe
On Thu, Apr 19, 2012 at 04:47:49PM +0200, Matteo Boscolo wrote: Ciao a tutti devo trasformare gli attributi della mia classe da class myClass(object): def __init__(self): self.pippo=10 a class myClass(object): def __init__(self): self._pippo=10 tutto cio per evitare dei problemi di ricorsione con il modulo pickle adesso uso questa tecnica: Non mi sembra che pickle abbia tanti problemi con la ricorsione se non che ...highly recursive data structure may exceed the maximum recursion depth Se il problema è solo per serializzare gli oggetti perché non usare un approccio differente? Invece di modificare del codice già esistente deleghi ad altri l'ingrato compito. Solo un esempio su come risulterebbe il tuo codice: class myClass(object): def __init__(self): self.pippo=10 import zope.interface from zope.interface.adapter import AdapterRegistry class ISerializable(zope.interface.Interface): def getObject(): Return the original object class SerializerMyClass: zope.interface.implements(ISerializable) def __init__(self, original): self._pippo = original.pippo def getObject(self): obj = myClass() obj.pippo = 10 registry = AdapterRegistry() registry.register([declarations.implementedBy(myClass)], ISerializable, '', SerializerMyClass) ### import pickle s = pickle.dumps(ISerializable(myobj)) myobj = pickle.loads(s).getObject() ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] Decoratori a runtime su classe
Grazie mille per il suggerimento, l'oggetto poi va a finire in sqlalchemy che internamente usa pickle per scrivere l'oggetto nel db. quindi in questo modo dovrebbe funzionare ciao, Matteo Il 20/04/2012 09:54, Marco Giusti ha scritto: On Thu, Apr 19, 2012 at 04:47:49PM +0200, Matteo Boscolo wrote: Ciao a tutti devo trasformare gli attributi della mia classe da class myClass(object): def __init__(self): self.pippo=10 a class myClass(object): def __init__(self): self._pippo=10 tutto cio per evitare dei problemi di ricorsione con il modulo pickle adesso uso questa tecnica: Non mi sembra che pickle abbia tanti problemi con la ricorsione se non che ...highly recursive data structure may exceed the maximum recursion depth Se il problema è solo per serializzare gli oggetti perché non usare un approccio differente? Invece di modificare del codice già esistente deleghi ad altri l'ingrato compito. Solo un esempio su come risulterebbe il tuo codice: class myClass(object): def __init__(self): self.pippo=10 import zope.interface from zope.interface.adapter import AdapterRegistry class ISerializable(zope.interface.Interface): def getObject(): Return the original object class SerializerMyClass: zope.interface.implements(ISerializable) def __init__(self, original): self._pippo = original.pippo def getObject(self): obj = myClass() obj.pippo = 10 registry = AdapterRegistry() registry.register([declarations.implementedBy(myClass)], ISerializable, '', SerializerMyClass) ### import pickle s = pickle.dumps(ISerializable(myobj)) myobj = pickle.loads(s).getObject() ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] RE
print Ciao Giuseppe print posta il codice che se c'è qualcosa da correggere la correggiamo 2012/4/20 Giuse giuseppelu...@gmail.com ndows 7 ma ancora non sono pratico. Ho provato a programmare Hello world pratica ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] RE
raw_input(questo non succederebbe se utilizzassi un sistema operativo serio :-) ) 2012/4/20 Giuse giuseppelu...@gmail.com Ciao Ragazzi, sono appena approdato a Python, da due anni circa nel mio tempo libero ho iniziato a imparare con il fai da te i classici linguaggi dei principianti, quindi l'HTML, CSS e JAVASCRIPT, cosi ho cominciato a fare qualche sito, ma niente di eccezionale, non sono un professionista nella vita faccio altro. Oggi mi sono registrato a Python e vorrei imparare un vero e proprio linguaggio di programmazione, dato che mi si è presentata la possibilità di poter scrivere alle persone di questa lista, approfitto a farlo con la speranza di essere aiutato a decollare, non vedo l'ora di imparare qualcosa. Ho installato il 2.7 sulla macchina windows 7 ma ancora non sono pratico. Ho provato a programmare Hello world praticamente non riesco a capire il motivo per cui NON STAMPA A VIDEO, quindi dopo molte prove mi chiedo se è normale che faccia cosi oppure no. Saluti. __**_ Python mailing list Python@lists.python.it http://lists.python.it/**mailman/listinfo/pythonhttp://lists.python.it/mailman/listinfo/python -- Giovanni Dall'Olio, phd student IBE, Institut de Biologia Evolutiva, CEXS-UPF (Barcelona, Spain) My blog on bioinformatics: http://bioinfoblog.it ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python
Re: [Python] RE
2012/4/20 Giuse giuseppelu...@gmail.com Ho installato il 2.7 sulla macchina windows 7 ma ancora non sono pratico. Ho provato a programmare Hello world praticamente non riesco a capire il motivo per cui NON STAMPA A VIDEO, quindi dopo molte prove mi chiedo se è normale che faccia cosi oppure no. Se apri una finestra del prompt dei comandi, scrivi Python (se non ti parte prova con C:\Python27\Python) ti viene fuori una roba così: Quindi scrivi: print Hello world Vedrai che lo vedi. Idem se lanci IDLE. Se invece scrivi un file hello.py con dentro print Hello world e lo esegui da Explora risorse allora non vedrai nulla (in realtà dovresti vedere una finestrella che si apre e si chiude subito). È giusto e normale.. il programma viene eseguito in una finestra che si richiude subito al termine del programma stesso. Ciao. Marco. -- http://beri.it/ - Un blog http://beri.it/i-miei-libri/ - Qualche libro ___ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python