elhacker.net cabecera Bienvenido(a), Visitante. Por favor Ingresar o Registrarse
¿Perdiste tu email de activación?.
 
Inicio Ayuda Buscar Ingresar Registrarse
29 Mayo 2012, 09:21  


Tema destacado: ¡Aprende hacking con práctica! - WarZone, el wargame de elhacker.net

+  Foro de elhacker.net
|-+  Programación
| |-+  Scripting (Moderadores: Novlucker, Leo Gutiérrez., EleKtro H@cker)
| | |-+  Problema escribiendo un archivo en Python
0 Usuarios y 1 Visitante están viendo este tema.
Páginas: [1] Ir Abajo Respuesta Imprimir
Autor Tema: Problema escribiendo un archivo en Python  (Leído 691 veces)
Arnau27

Desconectado Desconectado

Mensajes: 33



Ver Perfil
Problema escribiendo un archivo en Python
« en: 4 Enero 2012, 16:25 »

Muy buenas, creo que el problema que tengo con el script es una tonteria aunque no consigo solucionarlo. :-[


import datetime
Y=(input('Escribe alguna cosa'))
txt=open(logfile, "w").write(datetime.datetime.now().ctime())
logfile.write(Y)

El script crea el archivo y escribe la fecha pero al introducir la variable Y me daAttributeError 'str' object has no atribute 'write'

Espero una solucion, gracias


En línea

La confianza es la base de la elegancia. Yo
$Edu$


Desconectado Desconectado

Mensajes: 1.416



Ver Perfil
Re: Problema escribiendo un archivo en Python
« Respuesta #1 en: 4 Enero 2012, 16:51 »

No se nada de python y no comprendo mucho el codigo, pero hablas de problemas de atributos, que archivo estas queriendo escribir? fijate si tiene los atributos de Solo Lectura activado, tendras que sacarlo.


En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas." - Albert Einstein.
adastra
Endless Learner
Colaborador
***
Desconectado Desconectado

Mensajes: 628


http://thehackerway.com/


Ver Perfil WWW
Re: Problema escribiendo un archivo en Python
« Respuesta #2 en: 4 Enero 2012, 17:30 »

El file descriptor no es "logfile", ese es el contenido del fichero (texto) el fichero propiamente dicho es el que te retona la llamada a la función "open()" ese es el problema, estas usando la variable equivocada.
En línea

http://twitter.com/jdaanial
http://thehackerway.com/

"Nunca discutas con un idiota, podria no notarse la diferencia"
Kant.
Trenico

Desconectado Desconectado

Mensajes: 7


Ver Perfil
Re: Problema escribiendo un archivo en Python
« Respuesta #3 en: 4 Enero 2012, 23:25 »

Cambia el:

Código
logfile.write(Y)

Por:

Código
txt.write(Y)
En línea
Arnau27

Desconectado Desconectado

Mensajes: 33



Ver Perfil
Re: Problema escribiendo un archivo en Python
« Respuesta #4 en: 5 Enero 2012, 20:55 »

Cambia el:

Código
logfile.write(Y)

Por:

Código
txt.write(Y)

Me sigue dando el mismo error no lo entiendo...
En línea

La confianza es la base de la elegancia. Yo
$Edu$


Desconectado Desconectado

Mensajes: 1.416



Ver Perfil
Re: Problema escribiendo un archivo en Python
« Respuesta #5 en: 5 Enero 2012, 21:03 »

Leiste lo que te comente yo?
En línea

"Todos somos muy ignorantes. Lo que ocurre es que no todos ignoramos las mismas cosas." - Albert Einstein.
Jirp96

Desconectado Desconectado

Mensajes: 39


Ver Perfil
Re: Problema escribiendo un archivo en Python
« Respuesta #6 en: 6 Enero 2012, 14:55 »

Hola!
Creo que el problema es por como abres el archivo y escribes a la vez, por lo que la variable "que lo contiene"(en tu caso, txt) no tiene nada en su interior.
Código
txt=open(logfile, "w").write(datetime.datetime.now().ctime())
 

Mira esto....
Código
>>> x = open("lala", "w").write("hola")
>>> x
>>> x.write("alal")
Traceback (most recent call last):
 File "<pyshell#7>", line 1, in <module>
   x.write("alal")
AttributeError: 'NoneType' object has no attribute 'write'
 
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'x']
>>> print x
None
 

Creo que si lo dejas asi deberia bastar.
Código
import datetime
Y=(input('Escribe alguna cosa'))
txt=open(logfile, "w")
txt.write(datetime.datetime.now().ctime())
txt.write(Y)

Por cierto, logfile es una variable que contiene el nombre del archivo a abrir, o es una cadena?(si es asi, faltan las comillas?)
Saludos!
« Última modificación: 6 Enero 2012, 14:59 por Jirp96 » En línea
Arnau27

Desconectado Desconectado

Mensajes: 33



Ver Perfil
Re: Problema escribiendo un archivo en Python
« Respuesta #7 en: 8 Enero 2012, 12:46 »

Hola!
Creo que el problema es por como abres el archivo y escribes a la vez, por lo que la variable "que lo contiene"(en tu caso, txt) no tiene nada en su interior.
Código
txt=open(logfile, "w").write(datetime.datetime.now().ctime())
 

Mira esto....
Código
>>> x = open("lala", "w").write("hola")
>>> x
>>> x.write("alal")
Traceback (most recent call last):
 File "<pyshell#7>", line 1, in <module>
   x.write("alal")
AttributeError: 'NoneType' object has no attribute 'write'
 
>>> dir()
['__builtins__', '__doc__', '__name__', '__package__', 'x']
>>> print x
None
 

Creo que si lo dejas asi deberia bastar.
Código
import datetime
Y=(input('Escribe alguna cosa'))
txt=open(logfile, "w")
txt.write(datetime.datetime.now().ctime())
txt.write(Y)

Por cierto, logfile es una variable que contiene el nombre del archivo a abrir, o es una cadena?(si es asi, faltan las comillas?)
Saludos!

Jirp96 gracias por tu ayuda
En línea

La confianza es la base de la elegancia. Yo
Páginas: [1] Ir Arriba Respuesta Imprimir 

Ir a:  

Mensajes similares
Asunto Iniciado por Respuestas Vistas Último mensaje
Problema escribiendo en resource
Java
~~ 0 715 Último mensaje 31 Mayo 2009, 17:54
por ~~
[Problema] Escribiendo un exploit para BoF
Bugs y Exploits
~ Yoya ~ 13 2,874 Último mensaje 27 Diciembre 2009, 05:37
por ~ Yoya ~
Escribiendo strings en archivos (python 2.6)
Scripting
Carloswaldo 7 2,171 Último mensaje 5 Enero 2010, 04:28
por Carloswaldo
problema escribiendo archivo vb6 api(caracteres raros)
Programación Visual Basic
z_ane_666 4 1,148 Último mensaje 8 Septiembre 2011, 18:02
por RHL
leer archivo con python
Scripting
poeta3d 1 777 Último mensaje 18 Diciembre 2011, 04:53
por 0x5d
Powered by SMF 1.1.16 | SMF © 2006-2008, Simple Machines