Test Foro de elhacker.net SMF 2.1

Programación => Scripting => Mensaje iniciado por: ¨°o.O (ßa¢Kg|å§§) O.o° en 27 Marzo 2010, 16:19 PM

Título: Python- Leer línia archivo bucle[Solucionado]
Publicado por: ¨°o.O (ßa¢Kg|å§§) O.o° en 27 Marzo 2010, 16:19 PM
Hola,

Llevo ya 2 horas mirando como puedo hacer que de un archivo de texto recorrerlo completamente línia a línia y si coincide con una linia entonces haga una cosa que es saltar de línia por ejemplo si se encuentra una coincidencia que es por ejemplo:
-->"Alejandro Jussdcggd"

Si entonces se encuentra coja la línia y salte de línia por ejemplo si -->"Alejandro Jussdcggd" esta en la línia 4 que coja la línia 4 y le sume 3 para ir a la línia "vdasd"

Os dejo la porción del código que tengo hecho.

Código (python) [Seleccionar]
if __name__ == "__main__":
   f= open('/home/alejandro/Escritorio/s.php')
   for linas in f:
       if linas.startswith('-->"Alejandro Jussdcggd"'):
           v= linas+3 #Fallo aquí
           print v

Título: Re: Python- Leer línia archivo bucle
Publicado por: h0oke en 27 Marzo 2010, 16:34 PM
 :-\ Es medio confusa tu explicación...

Pero lo que puedo aprecia en

Código (python) [Seleccionar]
v = linas + 3

Es que tu tienes un elemento de la secuencia y no precisamente un valor entero del índice de tu lista. Creo que lo mejor es utilizar un ciclo incondicionado a través de range().
Título: Re: Python- Leer línia archivo bucle
Publicado por: ¨°o.O (ßa¢Kg|å§§) O.o° en 27 Marzo 2010, 16:42 PM
Hola,
Ando medio confuso, si aquí v = linas + 3 falla pero, mi idea es que dentro del condicional salte directamente de a partir de esa linia salte osea pase directamente a la 4 si una coincidencia esta en 1.
No se si me explico, soy nuevo en python, vengo de c# de Win$
Saludos
Título: Re: Python- Leer línia archivo bucle
Publicado por: h0oke en 27 Marzo 2010, 16:49 PM
Es que en la teoría de archivos de textos, se define que estos ficheros son de acceso secuencial...  :-\ es decir que teóricamente es imposible saltar líneas en cualquier lenguaje...
Título: Re: Python- Leer línia archivo bucle
Publicado por: ¨°o.O (ßa¢Kg|å§§) O.o° en 27 Marzo 2010, 16:54 PM
En c# hay las list<string>() pero en python.
en list ponia todas las linias del fichero y desde ahi hacia el foreach pero en python no lo sé alguna ayuda?
Título: Re: Python- Leer línia archivo bucle
Publicado por: h0oke en 27 Marzo 2010, 16:58 PM
Puedes insertar en una lista l cada elemento(línea) de tu bucle. Luego directamente trabajas con tu "lista de strings" como realmente necesitas.
Título: Re: Python- Leer línia archivo bucle
Publicado por: ¨°o.O (ßa¢Kg|å§§) O.o° en 27 Marzo 2010, 17:15 PM
Puff que mal.. llevo solo 3 dias con python y no lo se usar aun..

me salta el error este

Traceback (most recent call last):
  File "/home/alejandro/NetBeansProjects/s/src/s.py", line 5, in <module>
    list = list(linas)
TypeError: 'list' object is not callable

Me podrias ayudar ya que estoy acostumbrado a c# y ahora con otro lenguaje.. xD

Código (python) [Seleccionar]
if __name__ == "__main__":
    f= open('/home/alejandro/Escritorio/s.php')
    x=f.readlines()
    for linas in x:
        list = list(linas)
        for xx in list:
            print xx
Título: Re: Python- Leer línia archivo bucle
Publicado por: h0oke en 27 Marzo 2010, 17:25 PM
Código (python) [Seleccionar]
l = []
for elemento in a:
     l.append(elemento)