上一篇: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()