Python StringIO及BytesIO包使用方法解析


Posted in Python onJune 15, 2020

StringIO

它主要是用在内存读写str中。

主要用法就是:

from io import StringIO

f = StringIO()
f.write(‘12345‘)
print(f.getvalue())

f.write(‘54321‘)
f.write(‘abcde‘)

print(f.getvalue())

#打印结果
12345
1234554321abcde

也可以使用str初始化一个StringIO然后像文件一样读取。

f = StringIO(‘hello\nworld!‘)
while True:
  s = f.readline()
  if s == ‘‘:
    break
  print(s.strip()) #去除\n
#打印结果
hello
world!

BytesIO

想要操作二进制数据,就需要使用BytesIO。

当然包括视频、图片等等。

from io import BytesIO

f = BytesIO()
f.write(‘保存中文‘.encode(‘utf-8‘))

print(f.getvalue())
#打印结果
b‘\xe4\xbf\x9d\xe5\xad\x98\xe4\xb8\xad\xe6\x96\x87‘

请注意,写入的不是str,而是经过UTF-8编码的bytes。

存放图片

f = BytesIO()

image_open = open(‘./1.jpg‘, ‘rb‘)
f.write(image_open.read())

image_save = open(‘./2.jpg‘, ‘wb‘)
image_save.write(f.getvalue())

以上就是本文的全部内容,希望对大家的学习有所帮助,也希望大家多多支持三水点靠木。

Python 相关文章推荐
Python while、for、生成器、列表推导等语句的执行效率测试
Jun 03 Python
Python实现HTTP协议下的文件下载方法总结
Apr 20 Python
Python3使用requests发闪存的方法
May 11 Python
Python中装饰器兼容加括号和不加括号的写法详解
Jul 05 Python
pygame 精灵的行走及二段跳的实现方法(必看篇)
Jul 10 Python
PyQt实现界面翻转切换效果
Apr 20 Python
Python图像处理之识别图像中的文字(实例讲解)
May 10 Python
python matlibplot绘制多条曲线图
Feb 19 Python
Python银行系统实战源码
Oct 25 Python
在python3.64中安装pyinstaller库的方法步骤
Jun 02 Python
Python实现一个简单的递归下降分析器
Aug 01 Python
超级详细实用的pycharm常用快捷键
May 12 Python
Python smtp邮件发送模块用法教程
Jun 15 #Python
pandas数据处理之绘图的实现
Jun 15 #Python
keras中的loss、optimizer、metrics用法
Jun 15 #Python
使用keras实现Precise, Recall, F1-socre方式
Jun 15 #Python
基于python和flask实现http接口过程解析
Jun 15 #Python
基于nexus3配置Python仓库过程详解
Jun 15 #Python
Keras官方中文文档:性能评估Metrices详解
Jun 15 #Python
You might like
PHP实现将HTML5中Canvas图像保存到服务器的方法
2014/11/28 PHP
PHP编写RESTful接口
2016/02/23 PHP
将PHP程序中返回的JSON格式数据用gzip压缩输出的方法
2016/03/03 PHP
PHP如何获取当前主机、域名、网址、路径、端口等参数
2017/06/09 PHP
thinkphp5.1 框架钩子和行为用法实例分析
2020/05/25 PHP
不懂JavaScript应该怎样学
2008/04/16 Javascript
火狐浏览器(firefox)下获得Event对象以及keyCode
2008/11/13 Javascript
原生js实现改变随意改变div属性style的名称和值的结果
2013/09/26 Javascript
jQuery绑定事件不执行但alert后可以正常执行
2014/06/03 Javascript
JS事件添加和移出的兼容写法示例
2016/06/20 Javascript
微信小程序模版渲染详解
2018/01/26 Javascript
VUE-Table上绑定Input通过render实现双向绑定数据的示例
2018/08/27 Javascript
详解Vue源码中一些util函数
2019/04/24 Javascript
微信小程序实现文件预览
2020/10/22 Javascript
Python常用正则表达式符号浅析
2014/08/13 Python
python运行其他程序的实现方法
2017/07/14 Python
Java及python正则表达式详解
2017/12/27 Python
python实现贪吃蛇游戏
2020/03/21 Python
python selenium firefox使用详解
2019/02/26 Python
python中的print()输出
2019/04/12 Python
Appium+python自动化之连接模拟器并启动淘宝APP(超详解)
2019/06/17 Python
PyQt4 treewidget 选择改变颜色,并设置可编辑的方法
2019/06/17 Python
python爬虫 基于requests模块发起ajax的get请求实现解析
2019/08/20 Python
Python SELENIUM上传文件或图片实现过程
2019/10/28 Python
手把手教你进行Python虚拟环境配置教程
2020/02/03 Python
加拿大床上用品、家居装饰、厨房和浴室产品购物网站:Linen Chest
2018/06/05 全球购物
金士达面试非笔试
2012/03/14 面试题
介绍一下linux的文件权限
2014/07/20 面试题
中层干部竞争上岗演讲稿
2014/01/13 职场文书
庆七一活动方案
2014/01/25 职场文书
运动会通讯稿150字
2014/02/15 职场文书
初中作文评语大全
2014/04/23 职场文书
名人演讲稿范文
2014/09/16 职场文书
个人剖析材料及整改措施
2014/10/07 职场文书
公司的力量观后感
2015/06/05 职场文书
php解析非标准json、非规范json的方式实例
2022/05/10 PHP