使用Python寫入文件時出現奇怪的問題。下面是代碼:使用來自函數的數據寫入文件的Python
t = func()
print t
f = open('data_t.dat', 'w')
for i in t:
f.write('%d\n' % (i))
f.close()
我沒趕上從功能異常,但可以打印出來的「T」的值如下:
[51535, 96382, 95788, 95293, 94996, 95491, 95392, 96085]
但不能生成的文件。運行代碼後沒有名爲「data_t.dat」的文件。然而,如果我直接使用這樣的數據,這個文件可以生成:
t = [51535, 96382, 95788, 95293, 94996, 95491, 95392, 96085]
f = open('data_t.dat', 'w')
for i in t:
f.write('%d\n' % (i))
f.close()
我試過了另一種方式。在這種情況下,文件不能生成:
t = func()
t = [51535, 96382, 95788, 95293, 94996, 95491, 95392, 96085]
f = open('data_t.dat', 'w')
for i in t:
f.write('%d\n' % (i))
f.close()
我不明白問題是什麼。任何建議都是值得歡迎的。謝謝!後續操作:正如Adam Smith指出的那樣,目錄已經在func()中改變了。這就是它發生的原因。謝謝你的幫助。
「該文件無法生成」是什麼意思?你有例外嗎?文件是否已創建,但是爲空? – chepner
你確定你的代碼沒有得到任何異常,並離開'func()'?在你的第一個例子中,它打印出「t」嗎? – Lafexlos
「文件無法生成」,我的意思是文件「data_t.dat」不存在。運行代碼後,不會寫入任何文件。 – user1794396