python | StringIO

Author Avatar
Aryb1n 1月 04, 2018

StringIO是用读写文件一样处理字符串

想以前在用c实现一个简单的Server的时候….在处理响应头的时候, 一直没有想到好的方法,只是拼接字符串,因为没有对字符串格式化读写的操作,后来想到了sprintf,简直是神器…

new一个StringIO对象,就可以用read, readline, write…来操作对象了

py2.x

from StringIO import StringIO
f_fake = StringIO('file content')
f_true = open('./xxx')
...

py3.x

from io import StringIO
f_fake = StringIO('file content')
f_true = open('./xxx')
...

read和getvalue的区别

read返回当前位置到结尾的部分
而getvalue返回整个字符串
seek可以设置当前位置(读写指针的位置)

为什么我seek之后 f.tell()不改变==