python文件般的缓冲对象

时间:2009-09-02 15:03:03

标签: python io buffer

我编写了一个缓冲类,它提供了一个类似于文件的界面,其中包含readwriteseektellflush方法内存中的简单字符串。当然它不完整(例如我没有写readline)。它的目的是由来自某些外部数据源的后台线程填充,但让用户将其视为文件。我希望它包含相对少量的数据(可能最多50K)

有没有更好的方法来做到这一点而不是从头开始编写?

2 个答案:

答案 0 :(得分:20)

您可以使用标准Python模块StringIOcStringIO来获取实现file interface的内存缓冲区。

cStringIO在C中实现,并且速度更快,因此如果可能,您应该使用该版本。

如果您使用的是Python 3,则应使用io.StringIO代替StringIOio.BytesIO代替cStringIO

答案 1 :(得分:6)

我想你可能正在寻找StringIO