如何在Python中的文件中包装一个string?
如何用string的内容创build类文件对象(与文件相同的鸭子types)?
对于Python 2.x,请使用StringIO模块。 例如:
>>> from cStringIO import StringIO >>> f = StringIO('foo') >>> f.read() 'foo'
我使用cStringIO(这是更快),但请注意,它不接受无法编码为纯ASCIIstring的Unicodestring 。 (您可以通过将“from cStringIO”更改为“from StringIO”来切换到StringIO)。
对于Python 3.x,请使用io
模块。
f = io.StringIO('foo')
在Python 3.0中:
import io with io.StringIO() as f: f.write('abcdef') print('gh', file=f) f.seek(0) print(f.read())
两个很好的答案。 我会添加一个小技巧 – 如果你需要一个真正的文件对象(一些方法需要一个,而不仅仅是一个接口),下面是创build一个适配器的方法: