好久好久没写博客了,有两个原因,一个是有点懒散,另一个也是因为有点懒散。。。
背景
最近因为工作需要支援其他项目的工作,我被分配到的其中一个任务是导出db中一个表的部分数据写入到一个csv文件,由于公司规范问题(可能是因为表太大了),不能请sre和dba帮忙,因此需要自己写脚本来导出数据。
这个项目比较旧,是用python写的,导出数据到文件的逻辑也是使用python写的。
因为想一次多写点数据,写入的时候就直接写入了一段比较长的字符串;
同时为了下次执行程序能在上次停下来的地方继续跑,用的是文件追加写的模式。
问题
奇怪的问题出现了,后面写进去的数据居然覆盖到前面去了!
我想要的效果:
我得到的效果:
排查过程
先贴代码:
python版本是2.7,运行环境是linux centos 7.7
import csv
def test_append_file():
lines = []
for i in range(10000, 10700):
lines.append([i, i+