我想使用当前日期作为文件的名称,但它似乎无法完成或我做错了什么。我之前使用一个变量作为文件的名称,但这似乎不起作用。文件或目录不存在
这是我的尝试:
import time
d = time.strftime("%d/%m/%Y")
with open(d +".txt", "a+") as f:
f.write("")
这只是看它是否创建该文件。正如你所看到的,我尝试了a+
,因为我读过的文件创建的文件如果不存在,我仍然得到相同的错误。
我想使用当前日期作为文件的名称,但它似乎无法完成或我做错了什么。我之前使用一个变量作为文件的名称,但这似乎不起作用。文件或目录不存在
这是我的尝试:
import time
d = time.strftime("%d/%m/%Y")
with open(d +".txt", "a+") as f:
f.write("")
这只是看它是否创建该文件。正如你所看到的,我尝试了a+
,因为我读过的文件创建的文件如果不存在,我仍然得到相同的错误。
的问题是你如何使用日期:
d = time.strftime("%d/%m/%Y")
你不能在一个文件名/
,因为这是一个目录来代替。你还没有制作目录。尝试使用连字符来代替:
d = time.strftime("%d-%m-%Y")
你几乎肯定不希望创建目录结构中的日/月/年,所以我想这不是你打算什么。
您的文件名中包含目录分隔符(/
),并且在尝试打开文件时不会为您创建这些目录。目前的工作路径中没有26/
目录或26/02/
目录。
你要么必须创建通过其他方式这些目录,或者如果你没有意思的一天,一个月是目录,改变你的斜线到一个不同的分隔符:
d = time.strftime("%d-%m-%Y")
“%Y-%m-%d”会正确排序;它通常是一个更好的选择。 –
现在我想到了,你是对的。 – Jcorretjer