内存中写入数据 | 手把手教你入门Python之七十三-阿里云开发者社区

开发者社区> Python学习站> 正文

内存中写入数据 | 手把手教你入门Python之七十三

简介: Python中提供了StringIO和BytesIO这两个类将字符串数据和⼆进制数据写⼊到内存⾥。

上一篇:CSV⽂件的读写 | 手把手教你入门Python之七十二
下一篇:Sys模块的使用 | 手把手教你入门Python之七十四

本文来自于千锋教育在阿里云开发者社区学习中心上线课程《Python入门2020最新大课》,主讲人姜伟。

内存中写入数据

除了将数据写⼊到⼀个⽂件以外,我们还可以使⽤代码,将数据暂时写⼊到内存⾥,可以理解为数据缓冲区。Python中提供了StringIO和BytesIO这两个类将字符串数据和二进制数据写⼊到内存⾥。

StringIO

StringIO可以将字符串写⼊到内存中,像操作⽂件⼀样操作字符串。

from io import StringIO

# 创建⼀个StringIO对象
f = StringIO()
# 可以像操作⽂件⼀样,将字符串写⼊到内存中
f.write('hello\r\n')
f.write('good')

# 使⽤⽂件的 readline和readlines⽅法,⽆法读取到数据
# print(f.readline())
# print(f.readlines())

# 需要调⽤getvalue()⽅法才能获取到写⼊到内存中的数据
print(f.getvalue())

f.close()

BytesIO

如果想要以二进制的形式写⼊数据,可以使⽤BytesIO类,它的⽤法和StringIO相似,只不过在调⽤write⽅法写⼊时,需要传⼊二进制数据。

from io import BytesIO

f = BytesIO()
f.write('你好\r\n'.encode('utf-8'))
f.write('中国'.encode('utf-8'))

print(f.getvalue())
f.close()

配套视频

版权声明:本文内容由阿里云实名注册用户自发贡献,版权归原作者所有,阿里云开发者社区不拥有其著作权,亦不承担相应法律责任。具体规则请查看《阿里云开发者社区用户服务协议》和《阿里云开发者社区知识产权保护指引》。如果您发现本社区中有涉嫌抄袭的内容,填写侵权投诉表单进行举报,一经查实,本社区将立刻删除涉嫌侵权内容。

分享:
Python学习站
使用钉钉扫一扫加入圈子
+ 订阅

Python学习资料大全,包含Python编程学习、实战案例分享、开发者必知词条等内容。

官方博客
官网链接