python模块之StringIO使用示例


Posted in Python onApril 08, 2015

StringIO经常被用来作为字符串的缓存,应为StringIO有个好处,他的有些接口和文件操作是一致的,也就是说用同样的代码,可以同时当成文件操作或者StringIO操作。比如:

import string, os, sys

import StringIO
def writedata(fd, msg):

    fd.write(msg)

    

f = open('aaa.txt', 'w')
writedata(f, "xxxxxxxxxxxx")

f.close()
s = StringIO.StringIO()

writedata(s, "xxxxxxxxxxxxxx")

因为文件对象和StringIO大部分的方法都是一样的,比如read, readline, readlines, write, writelines都是有的,这样,StringIO就可以非常方便的作为"内存文件对象"。
import string

import StringIO
s = StringIO.StringIO()

s.write("aaaa")

lines = ['xxxxx', 'bbbbbbb']

s.writelines(lines)
s.seek(0)

print s.read()
print s.getvalue()

s.write(" ttttttttt ")

s.seek(0)

print s.readlines()

print s.len

StringIO还有一个对应的c语言版的实现,它有更好的性能,但是稍有一点点的区别,cStringIO没有len和pos属性。
Python 相关文章推荐
使用python实现正则匹配检索远端FTP目录下的文件
Mar 25 Python
Python中第三方库Requests库的高级用法详解
Mar 12 Python
Django中url的反向查询的方法
Mar 14 Python
Python实现判断给定列表是否有重复元素的方法
Apr 11 Python
Python的iOS自动化打包实例代码
Nov 22 Python
用python脚本24小时刷浏览器的访问量方法
Dec 07 Python
python numpy实现文件存取的示例代码
May 26 Python
PyQt4实时显示文本内容GUI的示例
Jun 14 Python
Python何时应该使用Lambda函数
Jul 02 Python
python将excel转换为csv的代码方法总结
Jul 03 Python
Java文件与类动手动脑实例详解
Nov 10 Python
对pytorch的函数中的group参数的作用介绍
Feb 18 Python
Python StringIO模块实现在内存缓冲区中读写数据
Apr 08 #Python
Python实现的简单文件传输服务器和客户端
Apr 08 #Python
操作Windows注册表的简单的Python程序制作教程
Apr 07 #Python
编写简单的Python程序来判断文本的语种
Apr 07 #Python
Python实现在线程里运行scrapy的方法
Apr 07 #Python
Python实现从脚本里运行scrapy的方法
Apr 07 #Python
Python自定义scrapy中间模块避免重复采集的方法
Apr 07 #Python
You might like
php漏洞之跨网站请求伪造与防止伪造方法
2013/08/15 PHP
使用gd库实现php服务端图片裁剪和生成缩略图功能分享
2013/12/25 PHP
php设计模式之命令模式使用示例
2014/03/02 PHP
PHP代码优化技巧小结
2015/09/29 PHP
php利用array_search与array_column实现二维数组查找
2019/07/08 PHP
延时重复执行函数 lLoopRun.js
2007/05/08 Javascript
js中判断文本框是否为空的两种方法
2011/07/31 Javascript
jQuery使用之标记元素属性用法实例
2015/01/19 Javascript
js时钟翻牌效果实现代码分享
2020/07/31 Javascript
JavaScript中的函数(二)
2015/12/23 Javascript
js实现字符串和数组之间相互转换操作
2016/01/12 Javascript
基于jQuery实现滚动切换效果
2016/12/02 Javascript
关于Node.js中Buffer的一些你可能不知道的用法
2017/03/28 Javascript
JavaScript实现的反序列化json字符串操作示例
2018/07/18 Javascript
Vue 路由 过渡动效 数据获取方法
2018/07/31 Javascript
SSM+layUI 根据登录信息显示不同的页面方法
2019/09/20 Javascript
[04:28]DOTA2亚洲邀请赛小组赛第五日 TOP10精彩集锦
2015/02/03 DOTA
python基础教程之自定义函数介绍
2014/08/29 Python
Python函数中的函数(闭包)用法实例
2016/03/15 Python
python 循环while和for in简单实例
2016/08/16 Python
Python中的字符串操作和编码Unicode详解
2017/01/18 Python
书单|人生苦短,你还不用python!
2017/12/29 Python
Pycharm设置界面全黑的方法
2018/05/23 Python
Python 中Django安装和使用教程详解
2019/07/03 Python
Django之创建引擎索引报错及解决详解
2019/07/17 Python
pytorch打印网络结构的实例
2019/08/19 Python
python实现微信打飞机游戏
2020/03/24 Python
使用TensorBoard进行超参数优化的实现
2020/07/06 Python
python 三种方法实现对Excel表格的读写
2020/11/19 Python
Pyside2中嵌入Matplotlib的绘图的实现
2021/02/22 Python
python实现学生信息管理系统源码
2021/02/22 Python
澳大利亚排名第一的露营和户外设备在线零售商:Outbax
2020/05/06 全球购物
仓库组长岗位职责
2014/01/29 职场文书
置业顾问岗位职责
2015/02/09 职场文书
工作时间调整通知
2015/04/24 职场文书
2015年挂职锻炼个人总结
2015/10/22 职场文书