我已经在这家住了几天了。这是我正在尝试做的事情:
- 以追加模式打开一个已经存在的 csv 文件
- 将一串新的csv行添加到底部(下面的'buffer')
- 关闭文件
- 重命名文件以反映最后输入数据的日期。
我的代码片段:
if mode == 'a':
print buffer
print fn
f = open(fn,mode)
f.write(buffer)
#f.write("\nfoo,bar")
f.close()
print f.closed
os.rename(".\\out\\" + fn, ".\\out\\" + fn[0:17]+tdy[0:4]+ "_" + tdy[5:7] + "_" + tdy[8:10] + ".csv")
附加信息:
mode 确实 == 'a' 它进入了循环。
buffer
印刷。打印为一串多行 csv 数据,例如:foo, bar, foo, bar foo, bar, foo, bar foo, bar, foo, bar
fn
是我试图打开并打印的正确文件名。f.closed
返回True
os.rename
工作并重命名文件。当我打开它时,尚未附加缓冲区。我试过
flush()
在关闭前添加一个。我试过没有重命名。
我试图附加一个硬编码的字符串。
有任何想法吗?