Estoy intentando guardar el contenido de una lista(que preveiamente e obtenido abriendo un txt y guardando todo en una variable) y guardarlo en el mismo txt.
Lo que intento hacer es buscar una palabra en una linea de ese archivo, y si esta, modificar esa linea en la lista y guardar toda la lista remplazando todo lo que habia en el archivo.
El caso es que lee la lista, pero no me la guarda, simplemente me crea un archiv vacio.
variable d es el nombre del firechero.
variable m es la palabra a buscar.
Código
def ftp(m,a,d): datos = m +': ' +a +'\n' try: ftp = ftplib.FTP(ftp_servidor, ftp_usuario, ftp_clave) try: ftp.retrbinary('RETR ' + d +'.txt',open(d +'.txt','w').write) #print 'Descargado del servidor.' fi = open(d +'.txt', 'r') linea = fi.readlines() fi.close() a = 0 for i in linea[0:]: if m in i: fi = open(d +'.txt', 'w') linea[a] = datos print linea fi.write(linea) fi.close() break else: fi = open(d +'.txt', 'a') fi.write(datos) fi.close() a = a + 1 #print 'Archivo modificado. Subiendo...' #f = open(d +'.txt', 'r') #ftp.storbinary('STOR ' + d +'.txt', f) #print 'Subido al servidor.' #f.close() #ftp.quit() #os.remove(d +'.txt') #os.system('cls') except: print 'No se a podido descargar/subir el archivo' except: print 'No se ha podido conectar al servidor ' + ftp_servidor
Lo tengo todo comentado para que no me suba nada al servidor.
este es el contenido del archivo:
Código:
Raining, Si
wactor, Tarde.
lorkino, Si
granya, Si
glassy, No
crejo2003, Si
sheikan, Si
neo_O, Tarde.
marihuana, Si
litro, Si
Pongo la salida de consola:
Código:
C:\Users\wactor\Desktop\Proyecto Asistencias WH\Sources>asistencias.py
Hola wactor
Selecciona la opcion de asistencia para el Lunes
-1- Si, voy a estar
-2- No, No entreno
-3- Llegare tarde
-4- Omitir
-5- Borrar archivo
Elige una opccion: 2
['Raining, Si\n', 'wactor, No\n', 'lorkino, Si\n', 'granya, Si\n', 'glassy, No\n
', 'crejo2003, Si\n', 'sheikan, Si\n', 'neo_O, Tarde.\n', 'marihuana, Si\n', 'li
tro, Si\n']
No se a podido descargar/subir el archivo
En teoria al modificar la lista, la linea wactor, tarde me la modifica por otra que yo le especifico. al imprimir lista si que me sale como deberia, con sus saltos de linea al final y demas, pero cuando toca guardar, no me guarda.
si necesitais alguna cosilla me lo decis.
gracias.