Estructuras de datos
Catalin Lungu
lcatalin en siadv.com
Vie Sep 10 09:41:40 CEST 2004
Hola,
Tengo un problema tonto, que creo que es mas de lógica que de Python.
Tengo el siguiente fichero :
<TABLA>
<TABLA_ID>Ntabla1<\TABLA_ID>
<DESCRIPCION>Descripcion1<\DESCRIPCION>
<CAMPOS>
<CAMPO>
<CAMPO_ID>Ncampo11<\CAMPO_ID>
<TIPO>Tcampo11<\TIPO>
<\CAMPO>
<CAMPO>
<CAMPO_ID>Ncampo12<\CAMPO_ID>
<TIPO>Tcampo12<\TIPO>
<\CAMPO>
<\CAMPOS>
<FECHAHORA>Fechahora1<\FECHAHORA>
<\TABLA>
<TABLA>
<TABLA_ID>Ntabla2<\TABLA_ID>
<DESCRIPCION>Descripcion2<\DESCRIPCION>
<CAMPOS>
<CAMPO>
<CAMPO_ID>Ncampo21<\CAMPO_ID>
<TIPO>Tcampo21<\TIPO>
<\CAMPO>
<CAMPO>
<CAMPO_ID>Ncampo22<\CAMPO_ID>
<TIPO>Tcampo22<\TIPO>
<\CAMPO>
<\CAMPOS>
<FECHAHORA>Fechahora2<\FECHAHORA>
<\TABLA>
Lo leo y lo guardo de esta forma:
result = {'TABLA': [{'TABLA_ID': ['Ntabla1'], 'DESCRIPCION': ['Descripcion1'], 'CAMPOS': [{'CAMPO': [{'CAMPO_ID': ['Ncampo11'], 'TIPO': ['Tcampo11']}, {'CAMPO_ID': ['Ncampo12'], 'TIPO': ['Tcampo12']}]}], 'FECHAHORA': ['Fechahora1']}, {'TABLA_ID': ['Ntabla2'], 'DESCRIPCION': ['Descripcion2'], 'CAMPOS': [{'CAMPO': [{'CAMPO_ID': ['Ncampo21'], 'TIPO': ['Tcampo21']}, {'CAMPO_ID': ['Ncampo22'], 'TIPO': ['Tcampo22']}]}], 'FECHAHORA': ['Fechahora2']}]}
Para extraer valores bastante sencillo. Pero para insertar, o modificar no tanto. Como parámetro le estoy pasando una lista de tuplas [("TABLA","Ntabla1"),("CAMPOS",""),("CAMPO","Ncampo11")]. Esto me devuelve {'CAMPO_ID': ['Ncampo11'], 'TIPO': ['Tcampo11']} (justo lo que necesito).
Por favor díganme como puedo insertar campos nuevos y modificar valores de campos existentes.
Muchas gracias,
Catalin Lungu
Más información sobre la lista de distribución Python-es