Python 如何将日期添加到文件名?

Python 如何将日期添加到文件名?,python,Python,如何将日期添加到文件名?例如:test2013\u 05\u 23\u 04\u 07.tar带有字符串格式 from datetime import datetime, date, time now = datetime.now() print now #2013-05-23 04:07:40.951726 tar = tarfile.open("test.tar", "w") 或者在Python 3中使用.format()+ from datetime import dateti

如何将日期添加到文件名?例如:
test2013\u 05\u 23\u 04\u 07.tar

带有字符串格式

from datetime import datetime, date, time

now = datetime.now()
print now #2013-05-23 04:07:40.951726    
tar = tarfile.open("test.tar", "w")
或者在Python 3中使用
.format()
+

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")
注意,您还可以使用
.strftime()
决定如何显示
datetime.now()


我有一个经常使用的函数:

print now.strftime('%Y-%m-%d')
>>> 2013-05-23
援引

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)
结果:
2013-05-23-08-20-43-myfile.xls

或更改fmt:

fname = timeStamped('myfile.xls')

结果:
20130523 myfile.xls

我通常使用以下内容:

fname2 = timeStamped('myfile.xls', '%Y%m%d-{fname}')

生成文件名
test2013-05-23-14-37-51.tar

我想您的意思是调用
fname=timestamp('myfile.xls')
,这是不必要的复杂,您可以使用
.strftime()
并指定格式。这并不简单,但对我来说更难记住方法名strftime和它使用的ftime格式。
fname2 = timeStamped('myfile.xls', '%Y%m%d-{fname}')
tst = datetime.datetime.now().isoformat("-").split(".")[0].replace(":","-")
tar = tarfile.open("test%s.tar" % now, "w")