Aqui está um código funcional (Criar arquivo com sucesso)
sys.stdout = open('filename1.xml', 'w')
Agora estou tentando nomear o arquivo com a Data e hora atual (não sou especialista em python)
filename1 = datetime.now().strftime("%Y%m%d-%H%M%S")
sys.stdout = open(filename1 + '.xml', 'w')
Eu quero escrever um nome de arquivo com a data e hora exata, é um arquivo xml, que o programa já criou, só preciso nomear o arquivo. O código acima não está funcionando.
[EDITADO] - O erro retornou
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
edatetime
Respostas:
Enquanto não estiver usando
datetime
, isso resolve o seu problema (responde sua pergunta) de obter uma sequência com o formato de data e hora atual especificado:rendimentos:
para que seu nome de arquivo possa anexar ou usar essa sequência.
fonte
print(timestr)
. Você copiou este texto de cima? Talvez um erro de digitação caso contrário?time
módulo.now
é um método de classe na classedatetime
no módulodatetime
. Então você precisaOu você pode usar uma importação diferente
Feito dessa maneira, você pode usar
datetime.now
conforme o código da pergunta.fonte
Mude esta linha
Para
Observe o extra
datetime
. Como alternativa, mudeimport datetime
parafrom datetime import datetime
fonte
import datetime
algum lugar.Este é muito mais legível por humanos.
fonte
Estou surpreso que não exista um formatador único que retorne um padrão (e seguro) 'para anexar no nome do arquivo' - formato do tempo, poderíamos simplesmente escrever
FD.write('mybackup'+time.strftime('%(formatter here)') + 'ext'
fonte
Aqui estão algumas que eu precisava incluir o carimbo de data e hora no nome da pasta para descarregar arquivos de um raspador da Web.
fonte
folder_to_save_files = shutil.os.path.join(drive_letter, folder_name +folder_time)
(também umaimport shutil
declaração pode substituir aimport os
declaração)