正确与否?将文件写入特定文件夹

时间:2014-06-14 16:05:38

标签: python

我正在尝试将文件写入New Innings 2文件夹,但它正在写入New Innings。请帮忙

import time
start_time = time.clock()
import numpy as np
Re=np.linspace(5,100,80)
print Re

import os
completeName = os.path.abspath("F:/New Innings/New Innings 2/R80000 .txt")
file = open("R80000 .txt", "w")
for j in np.arange(0,80):
    file.write((str(Re[j])+"\n")) 
    print((str(Re[j]))+"\n","\n") 
file.close()

print time.clock() - start_time, "seconds"

原始python文件保存在New Innings 2文件夹中。

3 个答案:

答案 0 :(得分:0)

您永远不会使用completeName。替换open语句如下:

file = open(completeName, "w")

答案 1 :(得分:0)

os.path.abspath不会将您更改为该目录。相反,它将显示文件的完整路径(即,在适当的情况下预先C:/My documents...或类似)。您可以看到它打印completeName

你想要的是:

output_file = open("F:/New Innings/New Innings 2/R80000 .txt", "w")
# for loop
output_file.close()

不要使用file作为变量名,因为它是内置的Python。

但是,更好的是,只需使用Numpy的np.savetxt

np.savetxt("F:/New Innings/New Innings 2/R80000 .txt", Re)

答案 2 :(得分:0)

您当前的目录可能是New Innings,而absdir不会更改您当前的目录。

您需要的是:

mydir="F:/New Innings/New Innings 2"
if not os.path.exists(mydir):
    os.makedirs(mydir)
os.chdir(mydir)
# do your stuff ...