Python中io模块下的StringIO和BytesIO

  • StringIO-以字符串形式进行内存读写
  • BytesIO-以 二进制形式进行内存读写

1. 导入模块

from io import StringIO, BytesIO

2. StringIO

f = StringIO()  # 新建StringIO对象
f.write('everything is possible')   # 向对象指定内存写入内容
data = f.getvalue() # 读取当前内存中所有的数据
print(data)

3. BytesIO

  • 实现字符串读取

b = BytesIO() 

b.write("Hello World".encode('utf-8'))  # encode:编码(str-->byte)   decode:解码(byte-->str)

data = b.getvalue().decode()
print(data)
  • 以二进制形式实现图片,音频等读写
from PIL import Image  # 导入图像读取模块
b = BytesIO()
img = Image.open("0.jpg")  # 打开图像
img.save(b, 'jpeg') # 将图像以jpg格式保存到内存中
data = b.getvalue()       # 读取内存数据
print(data)

 

你可能感兴趣的:(Python,Standard,library)