微信公众号搜"智元新知"关注
微信扫一扫可直接关注哦!

无法使用python将数据写入文件

outfile = open(inputfile,'w') outfile.write(argument) outfile.flush() os.fsync(outfile) outfile.close

这是代码片段。 我正在尝试在python中写入文件。 但是当我们打开这个文件的时候,什么也没有写进去。 我做错了什么?

比较大的XML文件

在win xp Vista和Windows 7上保存程序数据的位置

在使用Perl的Windows中进行文件input和读取时遇到问题

python中的IOError 22在Windows上无效

多个Java进程可以同时读取同一个文件吗?

您不调用outfile.close方法

不需要在这里刷新,只需要正确地关闭

outfile = open(inputfile,'w') outfile.write(argument) outfile.close()

或者更好的是,使用文件对象作为上下文管理器:

with open(inputfile,'w') as outfile: outfile.write(argument)

这一切都假设argument不是一个空字符串,并且您正在查看正确的文件。 如果您在输入文件中使用相对路径,则使用的绝对路径取决于您当前的工作目录,您可能正在查看错误文件以查看是否写入了某个文件

尝试

outfile.close()

注意括号。

outfile.close

只会返回函数对象,并没有做任何事情。

直到您刷新或关闭文件时,您才会看到写入的数据。 而在你的情况下,你没有正确地冲洗/关闭文件

* flush the file and not stdout - So you should invoke it as outfile.flush() * close is a function. So you should invoke it as outfile.close()

所以正确的片段将是

outfile = open(inputfile,'w') outfile.write(argument) outfile.flush() outfile.close()

版权声明:本文内容由互联网用户自发贡献,该文观点与技术仅代表作者本人。本站仅提供信息存储空间服务,不拥有所有权,不承担相关法律责任。如发现本站有涉嫌侵权/违法违规的内容, 请发送邮件至 [email protected] 举报,一经查实,本站将立刻删除。

相关推荐