On Wed, Nov 7, 2012 at 2:29 PM, Stefano Dal Pra <[email protected]> wrote: > 2012/11/7 orsomannaro <[email protected]>: >> Il 07/11/2012 09:02, enrico franchi ha scritto: >> >> >>> Non ultima, la cara vecchia scomposizione in funzioni. >> >> >> >> Infatti per ora ho risolto cosi': >> >> >> def str2int(str): return int(str) if str.isdigit() else None >> >> >> numero1 = str2int(get_num(...)) >> numero2 = str2int(get_num(...)) >> numero3 = str2int(get_num(...)) >> ... >> if numero1 and numero2 and numero3 and ...: >> my_obj.codice1 = numero1 >> my_obj.codice2 = numero2 >> my_obj.codice3 = numero3 >> ... >> > > Ciao, ti propongo questa variante: > > str2int = lambda str : str.isdigit() and int(str)
Scusa, meglio scriverla cosi': str2int = lambda s : s.isdigit() and int(s) dato che str e' una keyword... > n = 0 > while True: > n += 1 > k = str2int(get_num) > if not k: break > setattr(my_obj, 'codice%s'%n, k) > > esempio svelto di setattr() : >>>> class p: > ... pass > ... >>>> Q = p() >>>> setattr(p,'attr1',0) >>>> Q.attr1 > 0 > > Ciao > > >> _______________________________________________ >> Python mailing list >> [email protected] >> http://lists.python.it/mailman/listinfo/python _______________________________________________ Python mailing list [email protected] http://lists.python.it/mailman/listinfo/python
