我已经编写了一个缓冲区类,它为内存中的一个简单字符串提供了一个类似文件的接口,方法有read
、write
、seek
、tell
等。当然,它是不完整的(例如,我没有写)。它的目的是由来自一些外部数据源的后台线程填充,但让用户将其视为一个文件。我希望它包含的数据量相对较小(最大可能为50K)
有没有更好的方法来代替从头开始写呢?
最佳答案
您可以使用标准的python模块StringIO
或cStringIO
来获得实现file interface的内存缓冲区。cStringIO
是在c中实现的,并且速度更快,因此如果可能,您应该使用该版本。
如果您使用的是python 3,那么应该使用io.StringIO
而不是StringIO
和io.BytesIO
而不是cStringIO
。