Foro de elhacker.net

Programación => Scripting => Mensaje iniciado por: NOB2014 en 22 Noviembre 2017, 23:57 pm



Título: Archivos en Python, Salto de línea y búsqueda.
Publicado por: NOB2014 en 22 Noviembre 2017, 23:57 pm
Hola gente, buen día. Estoy estudiando archivo y me encuentro con 2 dudas(por el momento):
La primera es que no logro que me copie el salto de línea, yo creí que al finalizar la frase con [Enter] bastaba pero parece que en el archivo no se ve reflejado.-
Y lo segundo es si estoy rumbeado con las líneas para buscar una palabra en el archivo.-

Código
  1. a=0
  2. f=open("archivo.txt", "a")
  3. for a in range(5):
  4. b = input("\n Ingrese frase...:")
  5. f.write(b)
  6. a+=1
  7. f.close()

Código
  1. palabra = 'Arequito'
  2. ocurrencias = []
  3. with open('archivo.txt') as lineas:
  4.    for linea in lineas:
  5.        if palabra in linea:
  6.            ocurrencias.append(linea)
  7.  
  8. print ocurrencias

Saludos.
Daniel


Título: Re: Archivos en Python, Salto de línea y búsqueda.
Publicado por: tincopasan en 23 Noviembre 2017, 02:24 am
Código
  1.    #a= 0    en un ciclo declarado con for y en este caso usando range no es necesario
  2.    f=open("archivo.txt", "a")
  3.    for a in range(5): #acá ya dice que se repita 5 veces
  4.     b = input("\n Ingrese frase...:") # el enter es para que termine la función input y no queda guardada
  5.     f.write(b)  #para el salto de línea sería f.write(b+"\n")
  6.     #a+=1   #esto también sobra
  7.    f.close()
  8.  

eso sería básicamente la respuesta 1
con respecto a la 2
no está mal, pero ojo, no guardará solamente la palabra sino toda la línea
y falta paréntesis en el print


Título: Re: Archivos en Python, Salto de línea y búsqueda.
Publicado por: NOB2014 en 23 Noviembre 2017, 23:10 pm
Hola tincopasan, gracias por ocuparte.
Como era de esperar funciona a la perfección, en cuanto al print es porque comencé con python 2.7 y ahora me actualice a 3.6.3, tendré más cuidado.-
Citar
...no guardará solamente la palabra sino toda la línea
Es lo que necesito, estoy haciendo un traductor inglés/español

Saludos.
Daniel