Aquí hay un código funcional (Crear archivo con éxito)
sys.stdout = open('filename1.xml', 'w')
Ahora estoy tratando de nombrar el archivo con la fecha y hora actual (no soy un experto en python)
filename1 = datetime.now().strftime("%Y%m%d-%H%M%S")
sys.stdout = open(filename1 + '.xml', 'w')
Quiero escribir un nombre de archivo con la fecha y hora exactas, es un archivo xml que el programa ya ha creado, solo necesito nombrar el archivo. El código anterior no funciona.
[EDITADO] - El error regresó
File "./fix.py", line 226, in <module>
filenames = datetime.now().strftime("%Y%m%d-%H%M%S")
AttributeError: 'module' object has no attribute 'now'
=
entrefilename
ydatetime
Respuestas:
Mientras no se usa
datetime
, esto resuelve su problema (responde a su pregunta) de obtener una cadena con el formato de fecha y hora actual que especifique:rendimientos:
para que su nombre de archivo pueda agregar o usar esta cadena.
fuente
print(timestr)
. ¿Copiaste este texto desde arriba? Quizás un error tipográfico de lo contrario?time
módulo.now
es un método de clase en la clasedatetime
en el módulodatetime
. Así que tú necesitasO puedes usar una importación diferente
Hecho de esta manera le permite usar
datetime.now
según el código en la pregunta.fuente
Cambiar esta línea
A
Tenga en cuenta el extra
datetime
. Alternativamente, cambie suimport datetime
afrom datetime import datetime
fuente
import datetime
algún lugar.Este es mucho más legible para los humanos.
fuente
Me sorprende que no haya un único formateador que devuelva un formato predeterminado (y seguro) 'para agregar en el nombre de archivo' - del momento, simplemente podríamos escribir
FD.write('mybackup'+time.strftime('%(formatter here)') + 'ext'
fuente
Aquí hay algunos que necesitaba para incluir el sello de fecha y hora en el nombre de la carpeta para descargar archivos desde un raspador web.
fuente
folder_to_save_files = shutil.os.path.join(drive_letter, folder_name +folder_time)
(también unaimport shutil
declaración puede reemplazar laimport os
declaración)