Hola de nuevo, tengo un par de dudas básicas más (por cierto, si este no es
el sitio apropiado para mi nivel/poner dudas decidmelo); mi primera duda es
la siguiente:

me he creado un programita que es el siguiente:
def abrirmes():
    mes=open('ABRIL2005.txt','r')

def abrirestacion():
    est_0303201=open('est_0303201.txt','a')

def leermes():
    fila=mes.readline()

def escribirestacion():
    est_0303201.write(fila)

def cerrararchivos():
    mes.close
    est_0303201.close


abrirmes()
abrirestacion()
leermes()
escribirestacion()
cerrararchivos()

El problema que me da es que me dice que en *leermes *no está definida la
variable *mes, *pero a la hora de ejecutar, primero llamo a abrirmes y
luego a leermes, por lo que debería estar disponible, no?

si me dejo de vainas y lo hago así:

mes=open('ABRIL2005.txt','r')

est_0303201=open('est_0303201.txt','a')

fila=mes.readline()

est_0303201.write(fila)

mes.close
est_0303201.close

No me da ningún problema.

Ni otra duda es que las lineas del archivo ABRIL2005.txt tienen la
siguiente forma:

"0303201";1/4/2005
0:01:00;2;0;0;0;0;143;-127;-127;2;0;0;0;-127;2;-127;-127;-127;-127;0
"0303202";1/4/2005
0:01:00;2;0;0;0;0;0;-127;-127;0;0;0;0;-127;0;-127;-127;-127;-127;0
...
y quiero que si el primer código es 0303201 me escriba la línea en el
archivo est_0303201 y si no, pues que pase de línea;
lo he intentado de la siguiente manera:

infile=mes.readline()
for line in infile:
    if line[1:8]==0303201:
        archivo_0303201.write(line)

y me da error al leer line[1:8]

cómo podría arreglarlo?

mil gracias por adelantado



El 19 de noviembre de 2012 11:38, Carlos Agulló Calvo
<cm.agu...@gmail.com>escribió:

> muchas gracias.
> Efectivamente, como dice mi tocayo, no me ha creado el archivo por que he
> definido* abrirtxt* pero no lo he invocado.
>
> (creo)
>
> El 19 de noviembre de 2012 11:23, Kiko <kikocorre...@gmail.com> escribió:
>
>>
>>
>> El 19 de noviembre de 2012 11:09, Carlos Agulló Calvo <
>> cm.agu...@gmail.com> escribió:
>>
>> Me he creado el siguiente programita:
>>>
>>> def abrirtxt():
>>>     archi=open('est_0303201','w')
>>>     archi.close()
>>>
>>>  Y creoque me debería haber creado un archivo txt llamado *est_0303201,
>>> *pero no se donde me ha creado el archivo.
>>>
>>>
>> Te lo debería haber creado en la misma ruta desde donde corras tu script.
>> http://docs.python.org/3/library/functions.html?highlight=open#open
>>
>> *file is either a string or bytes object giving the pathname (absolute
>> or relative to the current working directory) of the file to be opened
>> or an integer file descriptor of the file to be wrapped.*
>>
>> _______________________________________________
>> 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/

Responder a