Re: [Python-es] isfile()
2013/8/2 Ricardo Azpeitia Pimentel razpei...@gmail.com: Si abre el archivo pero nunca lo cierra. Y si, puedes iterar sobre un archivo, y por default usa xreadlines si no mal recuerdo. Con el with, python se encarga de cerrar el archivo. xreadlines esta deprecado desde la 2.3. Y acabo de comprobar que for line in file hace lo mismo que for line in file.readlines() excepto que readlines te permite colocar un parámetro para usar un buffer. Lo que pasa es que usa getcwd y depediendo de donde ejecute el script y donde se encuentren sus archivos va a tener resultados diferentes. Una buena idea seria imprimir la rutas para ver cual es la diferencia. Y sería bueno que imprima con repr para ver donde esta el error: with open('testfile.txt') as testfile: for fileName in testfile: print repr(fileName) Saludos -- A menudo unas pocas horas de Prueba y error podrán ahorrarte minutos de leer manuales. ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] isfile()
No recordaba bien, pero `for line in file` efectivamente es el reemplazo de xreadlines. http://docs.python.org/2/library/stdtypes.html?highlight=xreadlines#file.xreadlines La diferencia con readlines que es readlines al igual que read, carga todo el archivo en memoria. (A menos que especifiques un tamaño de buffer). El 3 de agosto de 2013 17:52, Carlos Zuniga carlos@gmail.com escribió: 2013/8/2 Ricardo Azpeitia Pimentel razpei...@gmail.com: Si abre el archivo pero nunca lo cierra. Y si, puedes iterar sobre un archivo, y por default usa xreadlines si no mal recuerdo. Con el with, python se encarga de cerrar el archivo. xreadlines esta deprecado desde la 2.3. Y acabo de comprobar que for line in file hace lo mismo que for line in file.readlines() excepto que readlines te permite colocar un parámetro para usar un buffer. Lo que pasa es que usa getcwd y depediendo de donde ejecute el script y donde se encuentren sus archivos va a tener resultados diferentes. Una buena idea seria imprimir la rutas para ver cual es la diferencia. Y sería bueno que imprima con repr para ver donde esta el error: with open('testfile.txt') as testfile: for fileName in testfile: print repr(fileName) Saludos -- A menudo unas pocas horas de Prueba y error podrán ahorrarte minutos de leer manuales. ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/
Re: [Python-es] isfile()
2013/8/3 Carlos Zuniga carlos@gmail.com 2013/8/2 Ricardo Azpeitia Pimentel razpei...@gmail.com: Si abre el archivo pero nunca lo cierra. Y si, puedes iterar sobre un archivo, y por default usa xreadlines si no mal recuerdo. Con el with, python se encarga de cerrar el archivo. xreadlines esta deprecado desde la 2.3. Y acabo de comprobar que for line in file hace lo mismo que for line in file.readlines() excepto que readlines te permite colocar un parámetro para usar un buffer. Lo que pasa es que usa getcwd y depediendo de donde ejecute el script y donde se encuentren sus archivos va a tener resultados diferentes. Una buena idea seria imprimir la rutas para ver cual es la diferencia. Y sería bueno que imprima con repr para ver donde esta el error: Yo creo que el problema es por no abrir el archivo en modo binario{1} Probar: with open('testfile.txt', 'rb') as testfile: {1} http://docs.python.org/2/tutorial/inputoutput.html#reading-and-writing-files with open('testfile.txt') as testfile: for fileName in testfile: print repr(fileName) Saludos -- A menudo unas pocas horas de Prueba y error podrán ahorrarte minutos de leer manuales. ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/ ___ Python-es mailing list Python-es@python.org http://mail.python.org/mailman/listinfo/python-es FAQ: http://python-es-faq.wikidot.com/