[Python-es] Forma pytonica de llenar un TreeListCtrl
mauricio rodriguez
rodriguez.mauricio55 en gmail.com
Jue Mar 1 18:55:21 CET 2012
Yo estoy aprendiendo también pero te doy igual mi opinión
lo único que le veo a tu código que usas dos if, en lugar de ello puedes
reemplazar el segundo if con un elif ya que se trata de una segunda
clausula dentro de la misma comparación lógica, también se podría compactar
pero yo no soy adepto a compactar el código solo por estética, ya que esto
atenta contra la legibilidad.
El 1 de marzo de 2012 15:24, conterperawebs webs
<conterperawebs en gmail.com>escribió:
> Hola!!
>
> Estoy aprendiendo Python y estoy seguro que este codigo (que me
> funciona) se puede simplificar mucho, programando de forma "pytonica".
>
> Lo que intento es llenar un TreeListCtrl, a partir de una lista que
> contiene otra lista, llamada Registros.
>
> Los datos los obtengo de una tabla de sqlite a traves del metodo fetchall.
>
> La estructura de la tabla seria esta
> Registros
> ID Campo 0(root) Campo1
> Campo2 Campo3 Campo4
> 1 X
> A A1 AA1 datoA
> 2 X
> A A1 AA2
> datoB
> 3 X
> A A2 AA1
> dato3
> 4 X
> B A1 AA1 dato4
> 5 X
> C A1 AA1 dato5
> 6 X
> D A1 AA2 dato6
>
>
> Donde Campo0 seria el root, Campo1, campo2, y campo3, serian nodos del
> arbol y Campo4 serian las hojas.
>
>
> familia_ant = ""
> subfamilia_ant = ""
>
> for reg in Registros:
> if familia_ant != reg[2]:
> item = self.tree.AppendItem(raiz,reg[2], data=None)
>
> familia_ant = reg[2]
> if subfamilia_ant != reg[3]:
> familia = self.tree.AppendItem(item, reg[3], data=None)
>
> subfamilia_ant = reg[3]
>
> final = self.tree.AppendItem(familia, reg[4], data=None)
> self.tree.SetItemText(final, reg[5], 1)
>
> Gracias anticipadas.
>
> _______________________________________________
> Python-es mailing list
> Python-es en python.org
> http://mail.python.org/mailman/listinfo/python-es
> FAQ: http://python-es-faq.wikidot.com/
>
>
------------ próxima parte ------------
Se ha borrado un adjunto en formato HTML...
URL: <http://mail.python.org/pipermail/python-es/attachments/20120301/93918ba9/attachment.html>
Más información sobre la lista de distribución Python-es