> Il giorno 09/ott/2013, alle ore 17:07, Manlio Perillo > <manlio.peri...@gmail.com> ha scritto: > >> On 09/10/2013 16:26, Giovanni Porcari wrote: >> Buongiorno a tutti >> >> [...] >> class TestClassNewStyle(object): >> def __init__(self): >> self.store = dict() >> >> def __getattr__(self,name): >> print '__getattr__ :' ,name >> if not hasattr(dict,name): >> raise AttributeError("dict has no attribute '%s'" % name) >> return getattr(self.store,name) >> >> def test(factory): >> x = factory() >> x['foo'] = 21 >> print x['foo'] >> print len(x) > > >> [...] >> test(TestClassNewStyle) >> >> [...] >> >> --------- TestClassNewStyle ------ >> Traceback (most recent call last): >> File "/Users/fporcari/Downloads/pyro_test/testobject.py", line 38, in >> <module> >> test(TestClassNewStyle) >> File "/Users/fporcari/Downloads/pyro_test/testobject.py", line 27, in test >> x['foo'] = 21 >> TypeError: 'TestClassNewStyle' object does not support item assignment >> ------------------------------------------------------------------------ >> >> In pratica vorrei che per ogni attributo che รจ definito in dict mi venisse >> restituita >> la chiamata su self.store mentre ogni attributo non definito in dict >> dovrebbe generare un >> attribute error. > > http://docs.python.org/2.7/reference/datamodel.html#special-method-lookup-for-new-style-classes > > > Ciao Manlio > _______________________________
Grazie Manlio. Sei sempre una certezza :) G _______________________________________________ Python mailing list Python@lists.python.it http://lists.python.it/mailman/listinfo/python