python 标准库 —— io(StringIO)
0. io流(io stream)
流是一种抽象概念,它代表了数据的无结构化传递。按照流的方式进行输入输出,数据被当成无结构的字节序或字符序列。从流中取得数据的操作称为提取操作,而向流中添加数据的操作称为插入操作。用来进行输入输出操作的流就称为IO流。换句话说,IO流就是以流的方式进行输入输出。
输入输出(IO)是指计算机同任何外部设备之间的数据传递。常见的输入输出设备有文件、键盘、打印机、屏幕等。数据可以按记录(或称数据块)的方式传递,也可以流的方式传递。所谓记录,是指有着内部结构的数据块。记录内部除了有需要处理的实际数据之外,还可能包含附加信息,这些附加信息通常是对本记录数据的描述。
1. StringIO
StringIO和BytesIO
数据读写不一定是文件,也可以在内存中进行。
StringIO 顾名思义就是在内存中以 io 流的方式读写 str。
from io import StringIO
f = StringIO()
f.write('hello') # 返回 5,也即写入的字符数目
f.write(' ')
f.write('world!')
f.getvalue() # hello world!
也可以读取:
f = StringIO('Hello!\nWorld!')
while True:line = f.readline()if line == '':breakprint(line.strip())
python 标准库 —— io(StringIO)相关推荐
- Python标准库中的io
Python标准库中io模块中有两个比较重要的组成部分:StringIO.BytesIO 1.StringIO StringIO 的作用是在内存中读写字符串,其示例代码如下: from io impo ...
- 转--Python标准库之一句话概括
作者原文链接 想掌握Python标准库,读它的官方文档很重要.本文并非此文档的复制版,而是对每一个库的一句话概括以及它的主要函数,由此用什么库心里就会有数了. 文本处理 string: 提供了字符集: ...
- 常用Python标准库
众所周知,Python有庞大的库资源,有官方标准库以及第三方的扩展库.每个库都一把利器,能帮助我们快速处理某方面的问题.作为一名python的初学者,当把基本的语法.列表和元组.字典.迭代器.异常处理 ...
- Python标准库介绍
1. 关于Python标准库 众所周知,Python是一个依赖强大的组件库完成对应功能的语言,为了便捷实现各项功能,前辈大牛们打造了多种多样的工具库公开提供给大众使用,而越来越多的库已经因为使用的广泛 ...
- Python标准库asyncio模块基本原理浅析
Python标准库asyncio模块基本原理浅析 本文环境python3.7.0 asyncio模块的实现思路 当前编程语言都开始在语言层面上,开始简化对异步程序的编程过程,其中Python中也开始了 ...
- pythondifflib详解_用python标准库difflib比较两份文件的异同详解
[需求背景] 有时候我们要对比两份配置文件是不是一样,或者比较两个文本是否异样,可以使用linux命令行工具diff a_file b_file,但是输出的结果读起来不是很友好.这时候使用python ...
- linux下c标准库位置,C 标准库 IO 使用详解
其实输入与输出对于不管什么系统的设计都是异常重要的,比如设计 C 接口函数,首先要设计好输入参数.输出参数和返回值,接下来才能开始设计具体的实现过程.C 语言标准库提供的接口功能很有限,不像 Pyth ...
- Python标准库中的zipfile
例如在E盘的demo目录下面存在下述三个文件: 将demo目录进行压缩后,在E盘的跟目录下面就会多了一个demo.zip文件 如果我们想获取demo.zip压缩文件里面的上述三个文件,在已知文件路径的 ...
- python标准库学习笔记
原创:python标准库学习笔记 数据结构 bisect 模块里实现了一个向列表插入元素时也会顺便排序的算法. struct - 二进制数据结构:用途:在 Python 基本数据类型和二进制数据之间进 ...
最新文章
- c++ 绘制函数图像_【图像增强】CLAHE 限制对比度自适应直方图均衡化
- 挑选管理软件应注意的几个问题
- 前后端数据交互的几个方法
- 【C++】简约的for循环
- 对Docker镜像layer的理解
- 17. JavaScript Math(算数)对象
- SharePoint2010 空白站点集无法找到术语管理库
- Excel根据公式生成插入语句
- button执行onclick函数_可能你的react函数组件从来没有优化过
- 激活ltsb2016_WIN10 LTSB 2016电话激活步骤详解
- 怎样快速提高计算机能力,如何提高算术能力?不借助计算机、笔、纸等工具,怎么能快速心算出多位数计算结果?如:489x85 如:128965-98542有什么口决及速算的方法的详细步骤?...
- vue项目使用eslint和prettier格式化项目
- 关于ZBRUSH弯折功能使用问题
- Gradle安装部署与基础入门详解
- Unity 制作愤怒的小鸟
- ROS学习(一)ROS Noetic安装及环境配置
- 【python之操作注册表】Python删除注册表节点下的值
- 案例:知乎是怎么落地Istio的?
- vue学习以及部分项目笔记
- 技术前沿与经典文章17:历史上54位伟大物理学家、科学家的专属LOGO(三)
热门文章
- 深入Managed DirectX9
- pycharm python3.7环境_Python3+Pycharm+PyQt5环境搭建步骤图文详解
- Load error: undefined path variables 记录一次IDEA崩溃
- SparkContext详述
- Bug:No mapping for GET /onepill//swagger-ui.html
- java语言中实现键盘输入_Java程序设计中的键盘输入数据的方法分析
- 多线程—— Queue(储存进程结果)
- 数据挖掘:模型选择——逻辑回归
- opencv imshow plt imshow
- 7-27 Codeforces Round #499 (Div. 2)