Python读写文件需要注意的地方 2015-03-31 23:19 69人阅读 评论(0) 收藏

2023-06-07,,

<span style="font-family: 'Microsoft YaHei'; background-color: rgb(255, 255, 255);">最近使用python写后台程序,发现了一些平时不太注意的地方。</span>

首先,Python与缓冲区的问题:

一个python程序执行,我们想要将其打印输出重定向到log文件,你会发现直到程序执行完,输出才一次性的写到log文件。原因是python 的print 先写到缓冲区了,还没flush到文件。

如果你想随着程序执行就写入。就要加一行“ sys.stdout.flush()”
--在每次print后都flush一次。

其次,open和close的问题:

经过多次实践发现,Python只有在遇到file.close()或者整个Python程序正常退出的时候,才会将你file.write()或者重定向输出到文件的内容真正写入到文件。也就是说,如果你的Python程序一直运行在后台,而你的Python程序累死下面这样,那么你永远那看不到文件被写入:

file = open("path_to_your_file",‘a’)
print >>file,"FOOL!"
while 1:
pass

你必须每次打开文件,写入之后都调用close方法关闭文件,这样,你才能看到一直运行的后台程序向文件的输出。

file = open("path_to_your_file",‘a’)
print >>file,"FOOL!"
file.close()
while 1:
pass

版权声明:本文为博主原创文章,未经博主允许不得转载。

Python读写文件需要注意的地方 2015-03-31 23:19 69人阅读 评论(0) 收藏的相关教程结束。

《Python读写文件需要注意的地方 2015-03-31 23:19 69人阅读 评论(0) 收藏.doc》

下载本文的Word格式文档,以方便收藏与打印。