Como pasar un arreglo a un string.
Arnau Sanchez
pyarnau en gmail.com
Mar Ene 15 11:48:10 CET 2008
Ariel Nardelli escribió:
> g = [k[0],daanio(k[12]),k[2],k[4],k[5],'A',k[6].strip(),k[7].strip(),k[8].strip(),9999,
> 999,k[9].strip(),999999,'','',0,'',9999,999,k[10].strip(),
> 999999,'','',0,'',k[11],k[12],dahora(k[13]),dahora(k[14]),dahora(k[15]),
> dahora(k[16]),dahora(k[17]),k[18],k[19],k[20],k[21],k[22],tcpas,tmanp,k[23],
> 0,0,psra,qees,ccap,0,0,0,ncon,nafi]
Haga lo que haga eso, es un estilo "inadmisible" en Python: deberías
separarlo en varias líneas y aprovechar la potencia del lenguaje para
conseguir algo legible. Ideas que te pueden servir:
- asignación paralela: campo1, campo2, campo3 = k[2], k[6], k[8]
- Función map: map(strip, lista_de_cadenas) / map(dahora,
lista_de_cadenas), etc.
Las asignaciones paralelas se pueden aligerar con una pequeña función de
ayuda "values_at":
values_at = lambda seq, indexs: [seq[x] for x in indexs]
campo2, campo4, campo5, campo7 = values_at(k, (2,4,5,7))
> sqlhr = "insert into mov_hojaderuta values (" + (49 * "%s,") +
> "%s);"
> ok=sql01(dbm,sqlhr,g)
> if ok <> 0: # No se grabo miro porque...
> gl("---" + 20 * "HRu" + "---")
> gl("ERROR Hoja de Ruta")
> reg = "Registro : " + str(g[0]) + " + " + str(g[1]) + "/" +
> str(g[2]) + " + " + str(g[3]) + " + " + g[4] + " + " + str(g[5]) + " +
> " + str(g[14]) + " + " + str(g[24]) + " !"
> gl( reg)
lo mismo se aplica a la línea de reg = ..., repasa tutoriales en lo que
respecta a:
- interpolación de cadenas: "hola: %s" % nombre
- método join: " + ".join(["a", "b"]) -> "a + b"
Espero que te sirva.
arnau
_______________________________________________
Lista de correo Python-es
http://listas.aditel.org/listinfo/python-es
FAQ: http://listas.aditel.org/faqpyes
Más información sobre la lista de distribución Python-es