【发布时间】:2011-03-16 06:13:44
【问题描述】:
将StringIO 缓冲区的内容写入文件的最佳方法是什么?
我目前正在做类似的事情:
buf = StringIO()
fd = open('file.xml', 'w')
# populate buf
fd.write(buf.getvalue ())
但是buf.getvalue() 会复制内容吗?
【问题讨论】:
-
StringIO对象始终存储在主内存中。如果您不想这样,请不要使用StringIO并直接写入文件。 -
@Philipp:是的,但是以这种方式使用
buf.getvalue()可能(?)创建内容的副本。 -
@Philipp 也许程序员想在写入文件之前对 StringIO 对象进行一些操作?