博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
python IO编程-StringIO和BytesIO
阅读量:6864 次
发布时间: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

你可能感兴趣的文章
solr8.0的简单搭建(一)
查看>>
lamba表达式和匿名委托
查看>>
Sql Server系列:视图
查看>>
判断现有的类对象是哪一种类的方法
查看>>
hdu3934 凸包
查看>>
Jmeter 接口测试 响应结果中文是Unicode转为中文
查看>>
根据 plist 还原 图片
查看>>
IE8兼容问题
查看>>
03 特殊字符
查看>>
课后练习----实现窗口的切换
查看>>
this 作用域
查看>>
Python3基础03_数据类型
查看>>
JS控制文本框输入的内容
查看>>
Tomcat7后台通过get接收数据处理乱码
查看>>
python逻辑编程之kanren
查看>>
6174问题
查看>>
如何将Beyond Compare文本比较设置行的缩进
查看>>
CI路径中如何去掉index.php
查看>>
精简ICO图标可减小EXE程序文件大小
查看>>
51Nod:独木舟问题(贪心)
查看>>