2015-12-02 83 views
0

我目前正在python程序中運行一些模擬。當模擬完成後,它會用一些數據寫出一個文本文件。不幸的是,這樣做的方式是將文本保存在相同的文件夾中,並使用相同的名稱。這些也是耗時的模擬,它使用我的CPU的一個核心,這意味着我可以一次做多個模擬。在自動保存的文本文件上獲取時間戳

但是,這也意味着,如果我這樣做的時候,走開,不要再回來的時候,會有一些覆蓋 - 這是不是我想要的東西:)

所以我的問題是(我對Python不太擅長):我可以在最後加上時間戳或其他東西嗎?這會使每個文件都以某種方式獨一無二,除非它們在同一時間完成? :)

我使用的是用於創建文本文件的代碼是:

np.savetxt('/home/user/Desktop/DVH/dvh-%s.txt'%(name.replace("/","-")), dvh1, delimiter=',') 

如果需要任何其他信息不知道。

在此先感謝。

問候

+1

'os.getpid()'可以用於此目的。或者在命令行上給它一個「作業ID」並將其放在文件名中。 – greggo

回答

2

使用datetime庫,充分利用了當前的時間與now功能,並與strftime功能進行格式化。

import datetime 

time_str = datetime.datetime.now().strftime("%Y%m%dT%H%M%S") 
file_name_format = '/home/user/Desktop/DVH/dvh-%s_%s.txt' 
file_name = file_name_format%(name.replace("/","-"), time_str) 
np.savetxt(file_name, dvh1, delimiter=',')