ejemplo de plantillas
Arnau Sanchez
pyarnau en gmail.com
Mar Mayo 27 20:38:13 CEST 2008
Chema Cortes escribió:
> Pues yo lo primero que pensé es en que se podía usar el "print >>", algo así:
>
> from cStringIO import StringIO
>
> res=StringIO()
>
> print >>res, "linea de codigo"
> print >>res, "\tuna linea de codigo que usa un argumento: %s" % arg2
> file("salida.txt","w).write(res.getvalue())
Pues sí, StringIO es perfecto para algo así (aunque personalmente no me gusta
nada el operador ">>" y usaría la función res.write o un alias más corto)
> De todos modos, estoy de acuerdo en que se debería evitar usar una
> lista como almacenamiento intermedio de las líneas de texto.
Ya que estamos dando alternativas, se podría usar un generador. No es muy
flexible, pero en fin, ahí queda:
def generador(arg1, arg2):
yield "una linea"
yield "otra linea"
file("/tmp/a", "w").writelines("%s\n" % line for line in generador())
_______________________________________________
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