python StringIO类
python的stringIO类用来处理字符串,由于其操作类似文件操作,可以视为内存中的文件。
1.创建stringIO
2.常用操作:
write,writelines、getvalue、seek、readline、readlines
>>> from StringIO import StringIO >>> buff = StringIO() >>> buff.write('hello') >>> buff.writelines(['world', '!']) >>> buff.len 11 >>> buff.seek(0) >>> buff.read() 'helloworld!' >>> buff.getvalue() 'helloworld!' >>> buff.read() '' >>> buff.readlines() [] >>> buff.seek(0) >>> buff.readlines() ['helloworld!']
cStringIO是其c语言实现的一个版本。
在stackoverflow上看到一些关于StringIO的用法,用来接收函数到标准输出的输出,然后在另外的函数中可以继续使用。基本想法是建立一个StringIO对象,将该对象赋值给sys.stdout,这样输入到stdout的数据都到了内存中的StringIO对象,对该对象进行getvalue()即可获取到函数打印出的数据。