我有以下代码
for i in np.arange(10):
f = open("file_"+str(i)+".dat",'w')
for j in np.arange(100):
f.write(str(func(i,j)))
f.write("\n")
print func(i,j)
f.close()
现在,由于print
命令,我可以看到终端上的输出,但是它创建的文件是空的。它无法将输出写入文件。我该怎么办?
答案 0 :(得分:0)
您可能想尝试:
for i in np.arange(10):
with open("file_%i.dat" % i,'w') as f:
for j in np.arange(100):
val = func(i,j)
f.write("%s\n" % val)
print val
f.flush()
答案 1 :(得分:0)
尝试以下代码。它都显示值并将其写入文件:
import numpy as np
def func(i, j):
return i + j/1000.0
for i in np.arange(10):
f = open("file_"+str(i)+".dat",'w')
for j in np.arange(100):
f.write(str(func(i,j)))
f.write("\n")
print func(i,j)
f.close()
我的猜测是Daniel Roseman是对的,问题隐藏在你的func
中。