Python中文件读写模式有何不同?如何使用flush()实现边写边保存?
- 内容介绍
- 文章标签
- 相关推荐
本文共计374个文字,预计阅读时间需要2分钟。
例如:+ 模式 + 可操作 + 文件不存在 + 是否覆盖 r+ 只能读 + 报错 - r++ 可读可写 + 报错 + w 只能写 + 创建 + w++ 可读可写 + 创建 + a 只能写 + 创建 + 否,追加写 + a++ 可读可写 + 创建
如表:
以上写入机制都是先读到了内存中,然后用数据写入并保存到文件中,举个简单的例子,拿爬虫来说,每爬到一组数据便write()到File文本中,如果程序中断,那么File文本不会有任何数据,通俗讲写了半天没保存!
干过爬虫都知道,大规模的爬虫突然死掉了是很正常的,那爬了半天的数据没保存下来真是日狗的心都有了,所以我们可以用flush()这个函数。
File = open("test.txt",'a+') File.write('数据'+'\n') File.flush()
这样的话,就是每写入一句就立即保存一次,哪怕程序突然断掉也不会影响。在写入的程序运行的同时可以随时打开文本查看写入的数据,并且省内存。
本文共计374个文字,预计阅读时间需要2分钟。
例如:+ 模式 + 可操作 + 文件不存在 + 是否覆盖 r+ 只能读 + 报错 - r++ 可读可写 + 报错 + w 只能写 + 创建 + w++ 可读可写 + 创建 + a 只能写 + 创建 + 否,追加写 + a++ 可读可写 + 创建
如表:
以上写入机制都是先读到了内存中,然后用数据写入并保存到文件中,举个简单的例子,拿爬虫来说,每爬到一组数据便write()到File文本中,如果程序中断,那么File文本不会有任何数据,通俗讲写了半天没保存!
干过爬虫都知道,大规模的爬虫突然死掉了是很正常的,那爬了半天的数据没保存下来真是日狗的心都有了,所以我们可以用flush()这个函数。
File = open("test.txt",'a+') File.write('数据'+'\n') File.flush()
这样的话,就是每写入一句就立即保存一次,哪怕程序突然断掉也不会影响。在写入的程序运行的同时可以随时打开文本查看写入的数据,并且省内存。

