提问人:user2954167 提问时间:11/5/2013 最后编辑:shad0w_wa1k3ruser2954167 更新时间:11/5/2013 访问量:111
如何在 Python 中将字符串列表写入文件?
How do I write a list of strings to a file in 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() 时,我都会收到一个错误,说文件未打开。
答:
3赞
Eevee
11/5/2013
#1
您无法从以只写模式打开的文件。:)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赞
David Yang
11/5/2013
#2
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
11/5/2013
这并不能解决 write-outside-loop 问题
评论