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()

これで、コマンドが原因でターミナルに出力が表示されprintますが、作成中のファイルは空です。出力をファイルに書き込むことができません。どうすればいいですか?

4

2 に答える 2

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.

于 2012-09-24T09:26:18.630 に答える
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()
于 2012-09-24T08:42:45.593 に答える