On 23/03/10 14:45, Manuel Enrique González Ramírez wrote:

Lo que necesito que haga mi programa es:
1. Leer linea a linea archivo1.txt
2. Cada vez que se lea una línea de archivo1.txt busque si esa palabra
se encuentra en archivo2.xml
3. Si la palabra NO se encuentra en archivo2.xml se debe crear un
archivo nuevo (diferencias.txt) que agregue esa palabra que no encontro
en archivo2.xml.  Si el archivo diferencias.tx ya existe entonces que
agregue una linea nueva al archivo diferencias.txt con la palabra en
cuestion.

Python sería un lenguaje "de scripting" muy, muy triste, si para conseguir esto necesitáramos tal cantidad de código. Sin cubrir quizá todos los detalles, podrías partir de algo así:

output = (line for line in open("archivo1.txt")
          if line.strip() not in open("archivo2.xml").read())
open("diferencias.txt", "a+").writelines(output)

Por cierto, añadir datos a archivos (operación no idempotente) suele ser una mala idea, yo usaría el modo "w" y si hay diferentes fuentes las uniría después.

Conceptualmente no sé si tiene mucho sentido mirar si una palabra está o no en un formato estructurado como XML, pero bueno, supongo que eso ya lo tienes controlado.
_______________________________________________
Python-es mailing list
[email protected]
http://mail.python.org/mailman/listinfo/python-es
FAQ: http://python-es-faq.wikidot.com/

Responder a