2013-11-04 117 views
0

這裏是我的代碼:如何在Python中將文件列表寫入文件?

from random import random 

f = open('Attractors1.txt', 'w') 
for i in range(10): 
    theta = (3.14/2)*random() 
f.write(str(theta)) 

我試圖創建10個THETA值的列表,以便我可以給他們打電話在另一個程序,但我不認爲對象是正確書寫。我如何知道我是否在寫它?每當我運行代碼並執行f.read()時,我得到一個錯誤,說文件沒有打開。

+0

太謝謝你了!這是我第一次嘗試寫入文件,我很難找出我在做什麼 – user2954167

回答

3

您不能以只寫模式打開文件read。 :)

由於您沒有在循環中編寫代碼,您只會實際吐出一個數字。即使你修正了這個問題,你也會在一行中得到一堆數字,因爲你沒有添加換行符。 .write不像print

而且它是在處理文件時,以確保文件被關閉,當你認爲它應該是使用with一個好主意。

那麼試試這個:

import math 
from random import random 

with open('Attractors1.txt', 'w') as f: 
    for i in range(10): 
     theta = (math.PI/2) * random() 
     f.write("{0}\n".format(theta)) 
-1
f = open('Attractors1.txt', 'w') 
for i in range(10): 
    theta = (3.14/2)*random() 
f.write(str(theta)) 
f.close() 

然後閱讀:

f = open('Attractors1.txt','r') 
text = f.read() 
print text 

編輯:wups毆打它

+0

這不能解決寫外環問題 – Eevee

相關問題