怎么我总结一串在一个文件在蟒蛇?
题
我如何创建一个类似文件的对象(同鸭类型的文件)与内容的一串?
解决方案
对于Python 2.x,请使用 StringIO 模块。例如:
>>> from cStringIO import StringIO
>>> f = StringIO('foo')
>>> f.read()
'foo'
我使用cStringIO(更快),但请注意它没有接受Unicode无法编码为纯ASCII字符串的字符串。 (您可以通过将“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())
两个很好的答案。我想添加一个小把戏—如果你需要一个真正的文件的对象(其中一些方法期待一个,不只是一个接口),这是一种创建一个适配器:
这适用于Python2.7和Python3.x:
io.StringIO(u'foo')
不隶属于 StackOverflow