- 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)