python能讀寫記憶體嗎

wjaning發表於2021-09-11

python能讀寫記憶體嗎

Python記憶體中的讀取與寫入

1、記憶體中的讀寫-StirngIO

StirngIO顧名思義就是在記憶體中讀寫str字串

sio.write(str)

功能:將字串寫入sio物件中。

sio.getvalue()

功能:獲取寫入的內容

from io import StringIO#
sio = StringIO()
sio.write("hello")
sio.write("good")
print(sio.getvalue())
#結果:hellogood

sio2.read()
功能:一次性讀取所有的sio物件中的內容

from io import StringIO#
sio2 = StringIO("hello jerry!!!")
print(sio2.read())
#結果:hello jerry!!!

2、在記憶體中讀取二進位制字串-BytesIO

StringIO操作的只能是str,如果要操作二進位制資料,就需要使用BytesIO,BytesIO實現了在記憶體中讀寫bytes。

與StringIO操作類似,但是注意要進行編碼寫入bytes

from io import BytesIO
f = BytesIO()
f.write("中文".encode('utf-8'))#寫入的不是str,而是經過UTF-8編碼的bytes
print(f.getvalue())#未解碼
print(f.getvalue().decode("utf-8"))#解碼

#結果
#未解碼:b'xe4xb8xadxe6x96x87'
#解碼:中文
from io import BytesIO
bio2 = BytesIO("中國紅".encode("utf-8"))
print(bio2.read().decode("utf-8"))
#結果:中國紅

更多學習內容,請點選

來自 “ ITPUB部落格 ” ,連結:http://blog.itpub.net/2983/viewspace-2834579/,如需轉載,請註明出處,否則將追究法律責任。

相關文章