基本上我希望能够计算一个参数存储它是一个文本文件,然后在程序的后面读回来。
答案 0 :(得分:2)
myFile = 'example.txt'
离开该结构时,使用with
会自动关闭该文件
# perform your writing
with open(myFile, 'w') as f:
f.write('some stuff')
# doing other work
# more code
# perform your reading
with open(myFile, 'r') as f:
data = f.read()
# do stuff with data
答案 1 :(得分:1)
在更改模式(读/写)之前,您需要使用close()
:
def MyWrite(myfile):
file = open(myfile, "w")
file.write("hello world in the new file\n")
file.close()
def MyRead(myfile):
file = open(myfile, "r")
file.read()
file.close()
答案 2 :(得分:0)
此外,您可以使用以下命令打开文件进行读写:
fd = open(myfile, "r+")
但是,您必须非常小心,因为每次操作(读取或写入)都会更改指针位置,因此您可能需要使用fd.seek来确保放置它在你想要读或写的正确位置。
另外,请记住,您的文件会变成一种内存映射字符串(*),有时会与磁盘同步。如果要在特定点保存更改,则必须使用fd.flush和os.fsync(fd)在不关闭文件的情况下有效地将更改提交到磁盘。
总而言之,我说最好坚持一种操作模式,然后关闭文件并再次打开,除非有一个非常好的理由在没有切换模式的情况下可以进行读/写。
*还有一个用于内存映射文件的模块,但我认为这超出了你的要求。