在python中将文件命名为当前日期?

时间:2012-06-28 14:59:26

标签: python-3.x

我正在尝试创建包含文件的压缩存档目录。这将每天完成,因此归档目录的名称必须包含它的创建日期。由于语法不正确,我无法在创建目录后重命名该目录。以下是我正在使用的脚本:

import zipfile

print('creating archive')
zf = zipfile.ZipFile('archive.zip', mode='w')
try:
    print('adding udp files')
    zf.write('test.udp')
finally:
    print ('closing')
    zf.close()
print('renaming archive...')
import datetime
dt = str(datetime.datetime.now())
import os
newname = 'file_'+dt+'.zip'
os.rename('archive.zip', newname)
print('renaming complete...')

以下是我收到的错误消息:

追踪(最近一次通话):   文件“。\ archive.py”,第17行,in     os.rename( 'archive.zip',NEWNAME) WindowsError:[错误123]文件名,目录名或卷标语法不正确

我正在使用python 3.2。如果需要其他任何内容,请告诉我。

谢谢, 保罗

1 个答案:

答案 0 :(得分:2)

您正尝试将存档重命名为

file_2012-06-28 16:01:52.615855.zip

在Windows上,:不是文件名中的有效字符,因此您需要选择其他格式,例如你可以只包括日期:

>>> datetime.date.today().isoformat()
'2012-06-28'