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

最新文章

  1. java web(二) Tomcat数据源
  2. Java部分总结图片版2(已加上原图链接!!!)
  3. ABBYY FineReader无法打开TWAIN源怎么办
  4. NoSQL架构实践(一)——以NoSQL为辅
  5. PPAS上运行pg_dump经过
  6. wel
  7. HDU2841 Visible Trees (容斥原理)
  8. Mod_python: The Long Story
  9. Oracle数据库的安装详解
  10. jQuery的animate在火狐浏览器上不支持backgroundPositionX的解决方法
  11. iPhone 上显示桌面版页面
  12. 记事本app TOP5(个人观点)
  13. hibernate学习之持久化对象
  14. CentOS7服务管理
  15. Java正则表达式校验
  16. 序列化模块json--pickle--shelve
  17. Struts全局跳转
  18. 五种开源协议的比较(BSD,Apache,GPL,LGPL,MIT)
  19. 2016-2017-2 20155302 实验四 Android 开发基础
  20. 附1 consul常用命令+常用选项

热门文章

  1. Ansible基础配置与常用模块使用
  2. [转帖]Linux 的UTC 和 GMT
  3. spring学习12 -Spring 框架模块以及面试常见问题注解等
  4. 第192天:js---Date对象属性和方法总结
  5. 第111天:Ajax之jQuery实现方法
  6. 第73天:jQuery基本动画总结
  7. dom变成jquery对象 先获取dom对象 然后通过$()转换成jquery对象
  8. CF878C Tournament set 图论
  9. 【BZOJ3712】Fiolki(并查集重构树)
  10. 埃及分数&&The Rotation Game&&骑士精神——IDA*