博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python IO编程-StringIO和BytesIO
阅读量:6766 次
发布时间:2019-06-26

本文共 942 字,大约阅读时间需要 3 分钟。

链接:https://www.liaoxuefeng.com/wiki/0014316089557264a6b348958f449949df42a6d3a2e542c000/001431918785710e86a1a120ce04925bae155012c7fc71e000

StringIO和BytesIO 提供了一种在内存中对字符串和byte类型数据的操作方法,使得和读写文件具有一致的接口。StringIO只能操作str对象,而BytesIO操作的对象是bytes

 

写入:

  1.导入对应模块

  2.创建相应的对象

  3.调用对象的write()方法

  注意:BytesIO写入的不是str而是经过UTF-8编码的bytes

读取:

  注意:不能通过上面创建的对象直接读取,而是通过上面对象调用getvalue()方法返回的数据来初始化一个新的StringIO或者BytesIO对象,然后在读取,剩下的读取步骤和文件的读取一样

#StringIO的写入>>> from io import StringIO#导入模块>>> f = StringIO()#创建对象>>> f.write('hello')#写5>>> f.write(' ')1>>> f.write('world!')6>>> print(f.getvalue())hello world!#读取#直接调用会为空>>> f.read()' '   >>> f=StringIO(f.getvalue())>>> f.read()'hello world'#BytesIO>>> from io import BytesIO>>> f=BytesIO()>>> f.write('中文'.encode('utf-8'))6>>> print(f.getvalue())b'\xe4\xb8\xad\xe6\x96\x87'>>> f.read()b''>>> f=BytesIO(f.getvalue())>>> f.read()b'\xe4\xb8\xad\xe6\x96\x87'

  

  

转载于:https://www.cnblogs.com/Gaoqiking/p/10566454.html

你可能感兴趣的文章
端口聚合配置
查看>>
易学笔记--程序猿踩过的十个最典型的坑
查看>>
Systemstate Dump分析经典案例(上)
查看>>
Win7+Ubuntu11
查看>>
克隆centos7后如何改网卡配置文件生效?
查看>>
Razor Components启用服务器渲染 更提升低速网络浏览体验
查看>>
豆瓣的账号登录及api操作
查看>>
python 高阶函数:sorted(排序)
查看>>
前端与移动开发之vue-day1(3)
查看>>
网络osi七层复习,未复习整理完,后续补齐
查看>>
python--004--函数定义
查看>>
在中国,有多少程序员干到40了?那么其他人去干什么了?
查看>>
C盘里的文件夹都是干什么用的?
查看>>
PHP商城 Composer 以及PSR规范
查看>>
一个线程罢工的诡异事件
查看>>
嵌入式培训大纲 看看具体的课程学习内容有哪些
查看>>
华三模拟器telnet远程登陆
查看>>
带外监控
查看>>
淘宝美工技能分享!13个超级有用的PS技巧
查看>>
Oracle RAC 故障处理(二)(+DATA磁盘组故障)
查看>>