python模块之StringIO/cStringIO(内存文件)
2024-09-26 19:05:31
1. StringIO/cStringIO是什么
这个模块提供了一个类,这个类的实例就像是一个文件一样可以读写,实际上读写的是一个字符串缓存,也可以称之为内存文件。
StringIO和文件对象拥有共同的父类IOBase,因此方法基本上都是一致的,StringIO就可以看做是一个内存文件。
想了一下,StringIO可能就相当于Java中的StringBuffer或者StringBuilder之类的吧...它是否也可以当做一个写文件缓存,当我要写很多零碎的内容的时候我先把内容都写到StringIO中,当写StringIO完了我再读出来写入到磁盘中,这不就能实现缓存写了吗O(∩_∩)O哈哈~
在py2.x中cStringIO是c语言版本的StringIO,它的性能要稍微好一些,但是py3.x已经没有cStringIO了。
2. 如何使用
StringIO的使用与普通的文件对象差不多,下面是一个简单的例子:
#! /usr/bin/python from io import StringIO if __name__ == '__main__':
f = StringIO()
f.write('first\n')
f.write('second\n')
f_content = f.getvalue()
print(f_content)
输出:
first
second
参考资料:
1. https://docs.python.org/2/library/stringio.html
最新文章
- java web(二) Tomcat数据源
- Java部分总结图片版2(已加上原图链接!!!)
- ABBYY FineReader无法打开TWAIN源怎么办
- NoSQL架构实践(一)——以NoSQL为辅
- PPAS上运行pg_dump经过
- wel
- HDU2841 Visible Trees (容斥原理)
- Mod_python: The Long Story
- Oracle数据库的安装详解
- jQuery的animate在火狐浏览器上不支持backgroundPositionX的解决方法
- iPhone 上显示桌面版页面
- 记事本app TOP5(个人观点)
- hibernate学习之持久化对象
- CentOS7服务管理
- Java正则表达式校验
- 序列化模块json--pickle--shelve
- Struts全局跳转
- 五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)
- 2016-2017-2 20155302 实验四 Android 开发基础
- 附1 consul常用命令+常用选项
热门文章
- Ansible基础配置与常用模块使用
- [转帖]Linux 的UTC 和 GMT
- spring学习12 -Spring 框架模块以及面试常见问题注解等
- 第192天:js---Date对象属性和方法总结
- 第111天:Ajax之jQuery实现方法
- 第73天:jQuery基本动画总结
- dom变成jquery对象 先获取dom对象 然后通过$()转换成jquery对象
- CF878C Tournament set 图论
- 【BZOJ3712】Fiolki(并查集重构树)
- 埃及分数&;&;The Rotation Game&;&;骑士精神——IDA*