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 相关文章推荐
在Django的视图(View)外使用Session的方法
Jul 23 Python
说一说Python logging
Apr 15 Python
python 字典(dict)按键和值排序
Jun 28 Python
python使用matplotlib绘制折线图教程
Feb 08 Python
python 字典修改键(key)的几种方法
Aug 10 Python
python实现自动获取IP并发送到邮箱
Dec 26 Python
kafka-python批量发送数据的实例
Dec 27 Python
在Python中字符串、列表、元组、字典之间的相互转换
Nov 15 Python
python给图像加上mask,并提取mask区域实例
Jan 19 Python
解决jupyter notebook打不开无反应 浏览器未启动的问题
Apr 10 Python
python使用列表的最佳方案
Aug 12 Python
Django-simple-captcha验证码包使用方法详解
Nov 28 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
thinkphp的静态缓存用法分析
2014/11/29 PHP
php源码分析之DZX1.5随机数函数random用法
2015/06/17 PHP
PHP常用工具类大全附全部代码下载
2015/12/07 PHP
Javascript string 扩展库代码
2010/04/09 Javascript
自定义jQuery插件方式实现强制对象重绘的方法
2015/03/23 Javascript
微信小程序之绑定点击事件实例详解
2017/07/07 Javascript
Webpack devServer中的 proxy 实现跨域的解决
2018/06/15 Javascript
详解angular2.x创建项目入门指令
2018/10/11 Javascript
vue element upload组件 file-list的动态绑定实现
2019/10/11 Javascript
vue开发移动端底部导航条功能
2020/04/08 Javascript
python 生成不重复的随机数的代码
2011/05/15 Python
python中os操作文件及文件路径实例汇总
2015/01/15 Python
浅析Python中的join()方法的使用
2015/05/19 Python
深入理解python函数递归和生成器
2016/06/06 Python
Python实现Linux的find命令实例分享
2017/06/04 Python
Python SMTP发送邮件遇到的一些问题及解决办法
2018/10/24 Python
对python操作kafka写入json数据的简单demo分享
2018/12/27 Python
pytorch中如何使用DataLoader对数据集进行批处理的方法
2019/08/06 Python
基于python的itchat库实现微信聊天机器人(推荐)
2019/10/29 Python
Python图像处理库PIL的ImageEnhance模块使用介绍
2020/02/26 Python
Python 实现使用空值进行赋值 None
2020/03/12 Python
python简单实现9宫格图片实例
2020/09/03 Python
解决margin 外边距合并问题
2019/07/03 HTML / CSS
美国女性服饰销售网站:Nasty Gal(坏女孩)
2016/07/26 全球购物
DogBuddy荷兰:找到你最完美的狗保姆
2019/04/17 全球购物
澳大利亚电商Catch新西兰站:Catch.co.nz
2020/05/30 全球购物
信用社实习人员自我鉴定
2013/09/20 职场文书
葡萄牙语专业个人求职信
2013/12/10 职场文书
婚庆公司的创业计划书
2014/01/22 职场文书
大学军训感言300字
2014/03/09 职场文书
婚前协议书怎么写
2014/04/15 职场文书
艺术设计专业毕业生推荐信
2014/07/08 职场文书
公安纪律作风整顿心得体会
2016/01/23 职场文书
护士业务学习心得体会
2016/01/25 职场文书
Golang 实现WebSockets
2022/04/24 Golang
SQL Server中锁的用法
2022/05/20 SQL Server