2017-03-31 61 views
0

的Python 2.7.13 - 版本寫隨機日期到文件的Python

我有一個包含生成隨機信息(日期,姓名,電話號碼)的幾個方法的.py。

def strTimeProp(start, end, format, prop): 
    stime = time.mktime(time.strptime(start, format)) 
    etime = time.mktime(time.strptime(end, format)) 
    ptime = stime + prop * (etime - stime) 
    return time.strftime(format, time.localtime(ptime)) 

def randomDate(start, end, prop): 
    return strTimeProp(start, end, '%m/%d/%Y %I:%M %p', prop) 

print randomDate("1/1/2008 12:00 AM", "1/1/2009 12:00 AM", random.random()) 

f = open("CDR.txt" ,"w") 
f.write(randomDate) 
f.close() 

我得到一個類型錯誤與f.write(randomDate)它是期待一個字符串或緩衝區,而不是功能。如何將打印語句的輸出發送到我正在寫入的.txt文件中?

+0

捕獲你的函數的輸出第一。 'rd = randomDate(..);打印(rd),...' –

回答

1

您傳遞函數randomDatef.write不帶任何參數

這將解決您的問題:

f.write(randomDate("1/1/2008 12:00 AM", "1/1/2009 12:00 AM", random.random())) 
+0

啊,謝謝!是否有一個更簡潔的方式來完成這個? – DJ2

+0

@ DJ2有幾種方法可以使我想得更簡潔。您可以在函數中指定默認參數,以便您可以不帶參數地調用它。或者,您可以將其值存儲在一個變量中,並將其傳遞給'f.write'。可能有更多的方法,但你的問題有點不清楚。 –