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 的 Socket 编程
Mar 24 Python
Python之Scrapy爬虫框架安装及简单使用详解
Dec 22 Python
Python 元类实例解析
Apr 04 Python
Python实现的简单线性回归算法实例分析
Dec 26 Python
python实现kmp算法的实例代码
Apr 03 Python
使用PyCharm进行远程开发和调试的实现
Nov 04 Python
Django添加bootstrap框架时无法加载静态文件的解决方式
Mar 27 Python
python 串行执行和并行执行实例
Apr 30 Python
Python库安装速度过慢解决方案
Jul 14 Python
python如何实现DES加密
Sep 21 Python
基于OpenCV的路面质量检测的实现
Nov 04 Python
使用Pytorch搭建模型的步骤
Nov 16 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经典的给图片加水印程序
2006/12/06 PHP
php中$_REQUEST、$_POST、$_GET的区别和联系小结
2011/11/23 PHP
thinkphp3.x自定义Action、Model及View的简单实现方法
2016/05/19 PHP
针对thinkPHP5框架存储过程bug重写的存储过程扩展类完整实例
2018/06/16 PHP
PHP7生产环境队列Beanstalkd用法详解
2020/05/19 PHP
Mootools 1.2教程 定时器和哈希简介
2009/09/15 Javascript
Js实现当前点击a标签变色突出显示其他a标签回复原色
2013/11/27 Javascript
js控制分页打印、打印分页示例
2014/02/08 Javascript
jquery复选框checkbox实现删除前判断
2014/04/20 Javascript
把普通对象转换成json格式的对象的简单实例
2016/07/04 Javascript
解决Vue开发中对话框被遮罩层挡住的问题
2018/11/26 Javascript
jQuery实现ajax的嵌套请求案例分析
2019/02/16 jQuery
gulp构建小程序的方法步骤
2019/05/31 Javascript
微信小程序工具函数封装
2019/10/28 Javascript
JavaScript实现英语单词题库
2019/12/24 Javascript
JavaScript 函数用法详解【函数定义、参数、绑定、作用域、闭包等】
2020/05/12 Javascript
用Python的线程来解决生产者消费问题的示例
2015/04/02 Python
Python中decorator使用实例
2015/04/14 Python
Python使用Pycrypto库进行RSA加密的方法详解
2016/06/06 Python
python+pandas生成指定日期和重采样的方法
2018/04/11 Python
Python采集代理ip并判断是否可用和定时更新的方法
2018/05/07 Python
python实现通过flask和前端进行数据收发
2019/08/22 Python
Django 对IP访问频率进行限制的例子
2019/08/30 Python
Python argparse模块应用实例解析
2019/11/15 Python
python/golang 删除链表中的元素
2020/09/14 Python
Python如何使用ConfigParser读取配置文件
2020/11/12 Python
canvas线条的属性详解
2018/03/27 HTML / CSS
澳大利亚在线百货商店:Real Smart
2017/08/13 全球购物
北京某公司的.net笔试题
2014/03/20 面试题
计算机毕业生自荐信范文
2014/03/23 职场文书
运动会广播稿100字
2014/09/14 职场文书
学校食品安全责任书
2015/01/29 职场文书
2015年健康教育工作总结
2015/04/10 职场文书
2016年猴年新春致辞
2015/08/01 职场文书
诺贝尔奖获得者名言100句:句句启人心智,值永久收藏
2019/08/09 职场文书
Nginx解决前端访问资源跨域问题的方法详解
2021/03/31 Servers