2014-02-26 57 views
0

我想使用當前日期作爲文件的名稱,但它似乎無法完成或我做錯了什麼。我之前使用一個變量作爲文件的名稱,但這似乎不起作用。文件或目錄不存在

這是我的嘗試:

import time 

d = time.strftime("%d/%m/%Y") 

with open(d +".txt", "a+") as f: 

    f.write("") 

這只是看它是否創建該文件。正如你所看到的,我嘗試了a+,因爲我讀過的文件創建的文件如果不存在,我仍然得到相同的錯誤。

回答

3

的問題是你如何使用日期:

d = time.strftime("%d/%m/%Y") 

你不能在一個文件名/,因爲這是一個目錄來代替。你還沒有製作目錄。嘗試使用連字符來代替:

d = time.strftime("%d-%m-%Y") 

你幾乎肯定不希望創建目錄結構中的日/月/年,所以我想這不是你打算什麼。

+1

「%Y-%m-%d」會正確排序;它通常是一個更好的選擇。 –

+0

現在我想到了,你是對的。 – Jcorretjer

1

您的文件名中包含目錄分隔符(/),並且在嘗試打開文件時不會爲您創建這些目錄。目前的工作路徑中沒有26/目錄或26/02/目錄。

你要麼必須創建通過其他方式這些目錄,或者如果你沒有意思的一天,一個月是目錄,改變你的斜線到一個不同的分隔符:

d = time.strftime("%d-%m-%Y") 
相關問題