python3中:
from io import StringIO

StringIO的行为与file对象非常像,但它不是磁盘上文件,而是一个内存里的"文件",在内存中读写str,我们可以像操作磁盘文件那样来操作StringIO,主要用于在内存缓冲区中读写数据。

output=StringIO([buf])
创建一个StingIO对象,寄存在缓冲区,可选参数buf是一个str或unicode类型,它将会与后续写的数据存放一起。

如:‘Hello\n’和Word\n’会被放在一个缓冲区中。
output=StringIO(‘Hello\n’)
output.write(‘Word\n’)
print(output.getvalue())
‘’’
结果:Word
将原来默认的Hello覆盖了,因此在写入数据之前,应先将读写位置移动到结尾,然后再写入,否则,初始化数据会被覆盖掉,因为读写位置默认是0
‘’’

StringIO类中的方法:
(1)、output.read([n])
参数n限定读取长度,int类型;缺省状态为从当前读写位置读取对象output中存储的所有数据。读取结束后,读写位置被移动

(2)、output.readline([length])
参数length限定读取的结束位置,int类型; 缺省状态为None,从当前读写位置读取至下一个以"\n"为结束符的当前行。读写位置被移动

(3)、output.readlines([sizehint])
参数sizehint为int类型;缺省状态为读取所有行并作为列表返回, 且从当前读写位置读取至下一个以"\n"为结束符的当前行。读写位置被移动

(4)、output.write(s)
从读写位置将参数s写入给对象output。参数s为str或unicode类型。读写位置被移动

(5)、output.writelines(list)
从读写位置将list写入给对象output。参数list为一个列表,列表的成员为str或unicode类型。读写位置被移动。

(6)、output.getvalue()
此函数没有参数,无论读写位置在哪里,都能够返回对象output中的所有数据

(7)、output.truncate([size])
有size参数,无论读写位置在哪里,都从起始位置开始,裁剪size字节的数据
无size参数,将当前读写位置之前的数据,裁剪下来

(8)、output.tell()
返回当前读写位置,读写位置默认是0,因此,之后写入的数据(“xxxxx!!!xxxxxx”)会将之前的数据覆盖掉

(9)、output.seek(pos[,mode])
移动当前读写位置至pos处,
可选参数mode:
为0时将读写位置移动至pos处,mode的默认值为0。
为1时将读写位置从当前位置起向前或向后移动|pos|个长度,
为2时将读写位置置于末尾处再向前或向后移动|pos|个长度;

(10)、output.close()
释放缓冲区,执行此函数后,数据将被释放,也不可再进行操作。

(11)、output.isatty()
此函数总是返回0。

(12)、output.flush()
刷新内部缓冲区。

举例1:
output=StringIO(‘Hello\n’)
output.seek(0,2) #将读写位置移动到末尾
output.write(‘Word\n’) #这样再写入字符串时,就不会覆盖之前默认的值
print(output.getvalue())
‘’’
结果:
Hello
Word
‘’’

#如果使用read()方法读取,则应该先将指针移动到开头,否则读取结果为空
#print(output.read())

output.seek(0,0)
print(output.read())
结果:
Hello
Word
‘’’

python io.StringIO函数相关推荐

  1. Python io – BytesIO,StringIO

    Python io module allows us to manage the file-related input and output operations. The advantage of ...

  2. python内置函数中的 IO文件系列 open和os

    本篇介绍 IO 文件中的 open 和 os基础用法. 本次用一个游戏登陆 基础界面做引子,来介绍. 实现存储的话,方式是很多的. 比如 存到字典 和列表了,可是字典.列表是临时的,玩网页游戏一次还是 ...

  3. python import io_详解Python IO编程

    文件读写 读文件 try: # windows下utf8 f = open('./README.md', 'r', encoding='utf8', errors='ignore') print(f. ...

  4. Python 装饰器 函数

    Python装饰器学习(九步入门):http://www.cnblogs.com/rhcad/archive/2011/12/21/2295507.html 浅谈Python装饰器:https://b ...

  5. Python - io 模块

    文章目录 关于 io 模块 1.文本 I/O 2.二进制(字节) I/O 3.原始 I/O 二.文本编码格式 选择性的 EncodingWarning 三.高阶模块接口 四.类的层次结构 1.I/O ...

  6. StringIO函数

    #数据的读取除了通过文件,还可以在内存中进行.Python中的io模块提供了对str操作的StringIO函数. #要把str写入StringIO,我们需要创建一个StringIO,然后像文件一样写入 ...

  7. python常用导入函数及其他操作备忘录

    python常用导入函数及其他操作备忘录 python常用导入函数 解压缩zip并读取csv文件 查看缺失值 权重系数取绝对值后排序(查看特征权重重要度) python常用导入函数 from IPyt ...

  8. Python 调用C函数

    /********************************************************************* Python 调用C函数* 说明:* Tony在处理SQL ...

  9. python io操作需要用到什么硬件_Python I/O 操作(一)

    一.I/O 概念 I/O 指的是相对内存而言的 input 和 output 从文件.数据库.网络向内存中写入数据叫做 input 从内存向文件.数据库.网络中输出数据叫做 output I/O 操作 ...

最新文章

  1. PyTorch关键算法疑似侵权,Facebook被起诉
  2. 从函数劫持角度看开发调试工具AlloyLever
  3. 图解SSL和加密解密-原理篇
  4. Android现学现用第一天
  5. 语言 ota_荣威RX5 PLUS使用最新的家族设计语言,给人更年轻时尚的感觉
  6. php 文字水印如何居中,php文字水印和php图片水印实现代码(二种加水印方法)
  7. myeclipse怎么创建jframe类_创建型-建造者模式
  8. srve0255e尚未定义要怎么办_我的可转债中签了,该怎么办?
  9. c html 转换 pdf文件,Html2Pdf:C调用wkhtmltopdf的API来将Html转换为pdf文件
  10. 实战Vue:ToDoList
  11. 手机qq表白代码大全可复制_照片后期如何一键调出INS风?676个效果 VSCO滤镜大全...
  12. java地理位置的获取_Java 根据 IP 获取地理位置
  13. c语言编程三角形面积计算,c语言计算三角形面积代码
  14. 英飞凌TC264学习(三)定时器
  15. “注释”是程序员的自我修养
  16. Python将读取到的字符串文本数据转换成数字类型列表和数组
  17. linux中浏览器安装flash player
  18. 防火墙命令补充和dmz_远程管理
  19. 趋势检验方法(一)直线方程拟合
  20. ADS 常见问题及解决方法

热门文章

  1. 用MySQL创建数据库和数据库表(linux终端操作)
  2. 2021年中国乙二醇行业发展现状及进出口状况分析:下游聚酯行业需求拉动乙二醇价格走高 [图]
  3. 【数值分析】插值法:拉格朗日插值、牛顿插值
  4. 眼球追踪如何预测头部追踪
  5. 零基础也能看懂的五大网络安全技术,学网络安全真的可以很简单
  6. Nginx反向代理https
  7. 【原】Java学习笔记025 - 内部类
  8. [分布式] Git结合Github进行版本控制
  9. 设备VMnet0上的网桥因桥接的以太网接口关闭而暂时停止运行(此虚拟机可能无法与主机或网络中的其他计算机通信)
  10. map方法的常见使用