from datetime import datetime, date, time
now = datetime.now()
print now #2013-05-23 04:07:40.951726
tar = tarfile.open("test.tar", "w")
如何将日期添加到文件名中?例如:test2013_05_23_04_07.tar
答案 0 :(得分:6)
使用字符串格式。
from datetime import datetime, date, time
now = datetime.now()
print now #2013-05-23 04:07:40.951726
tar = tarfile.open("test%s.tar" % now, "w")
或者在Python 3中使用.format()
。+
tar = tarfile.open("test{}.tar".format(now), "w")
注意,您还可以决定使用datetime.now()
显示.strftime()
的方式:
print now.strftime('%Y-%m-%d')
>>> 2013-05-23
答案 1 :(得分:3)
我通常使用这样的东西:
tst = datetime.datetime.now().isoformat("-").split(".")[0].replace(":","-")
tar = tarfile.open("test%s.tar" % now, "w")
生成文件名test2013-05-23-14-37-51.tar
。
答案 2 :(得分:2)
我有一个经常使用的功能:
def timeStamped(fname, fmt='%Y-%m-%d-%H-%M-%S-{fname}'):
import datetime
# This creates a timestamped filename so we don't overwrite our good work
return datetime.datetime.now().strftime(fmt).format(fname=fname)
使用
调用fname = timeStamped('myfile.xls')
结果:2013-05-23-08-20-43-myfile.xls
或者更改fmt:
fname2 = timeStamped('myfile.xls', '%Y%m%d-{fname}')
结果:20130523-myfile.xls