El día 1 de marzo de 2012 18:24, conterperawebs webs <conterperaw...@gmail.com> escribió:
> Estoy aprendiendo Python y estoy seguro que este codigo (que me funciona) > se puede simplificar mucho, programando de forma "pytonica". Tampoco te obsesione mucho, ser pytónico no es obligatorio. Lo importante de verdad es que el código sea entendible para que sea sencillo modificarlo en un futuro, por tí o por otro. Si he entendido bien lo que quieres, sería un caso típico para 'itertools.groupby'. Te pongo el código para darte una idea, pero deberás ajustarlo a tu problema en concreto: from operator import itemgetter from itertools import groupby getroot = itemgetter(1) getfamilia = itemgetter(2) getsubfamilia = itemgetter(3) for familia_name, subfamilia in groupby(Registros, itemgetter(2)): item = self.tree.AppendItem(raiz, familia_name, data=None) for subfamilia_name, nodos in groupby(subfamilia, itemgetter(3)): familia = self.tree.AppendItem(item, subfamilia_name, data=None) for reg in nodos: final = self.tree.AppendItem(familia, reg[4], data=None) self.tree.SetItemText(final, reg[5], 1) -- Hyperreals *R: http://ch3m4.org/blog Quarks, bits y otras criaturas infinitesimales _______________________________________________ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/