Python StringIO及BytesIO包使用方法解析
StringIO
它主要是用在內(nèi)存讀寫(xiě)str中。
主要用法就是:
from io import StringIOf = StringIO()f.write(‘12345‘)print(f.getvalue())f.write(‘54321‘)f.write(‘a(chǎn)bcde‘)print(f.getvalue())#打印結(jié)果123451234554321abcde
也可以使用str初始化一個(gè)StringIO然后像文件一樣讀取。
f = StringIO(‘hellonworld!‘)while True: s = f.readline() if s == ‘‘: break print(s.strip()) #去除n#打印結(jié)果helloworld!
BytesIO
想要操作二進(jìn)制數(shù)據(jù),就需要使用BytesIO。
當(dāng)然包括視頻、圖片等等。
from io import BytesIOf = BytesIO()f.write(‘保存中文‘.encode(‘utf-8‘))print(f.getvalue())#打印結(jié)果b‘xe4xbfx9dxe5xadx98xe4xb8xadxe6x96x87‘
請(qǐng)注意,寫(xiě)入的不是str,而是經(jīng)過(guò)UTF-8編碼的bytes。
存放圖片
f = BytesIO()image_open = open(‘./1.jpg‘, ‘rb‘)f.write(image_open.read())image_save = open(‘./2.jpg‘, ‘wb‘)image_save.write(f.getvalue())
以上就是本文的全部?jī)?nèi)容,希望對(duì)大家的學(xué)習(xí)有所幫助,也希望大家多多支持好吧啦網(wǎng)。
相關(guān)文章:
1. WML語(yǔ)言的基本情況2. 淺談python多線程和多線程變量共享問(wèn)題介紹3. python 實(shí)現(xiàn)rolling和apply函數(shù)的向下取值操作4. Python 多線程之threading 模塊的使用5. python利用platform模塊獲取系統(tǒng)信息6. Python如何批量獲取文件夾的大小并保存7. CSS代碼檢查工具stylelint的使用方法詳解8. react axios 跨域訪問(wèn)一個(gè)或多個(gè)域名問(wèn)題9. Python的Tqdm模塊實(shí)現(xiàn)進(jìn)度條配置10. Python過(guò)濾掉numpy.array中非nan數(shù)據(jù)實(shí)例
