簡體   English   中英

如何讀回python中的字節文件?

[英]How to read back the bytes file in python?

在 Python 中,我將模型保存為 joblib 文件,並使用

bytes_data = open('model.joblib','rb').read()

然后我使用下面的代碼轉換為 base64 並存儲在數據庫中

import base64
base64_data = base64.b64encode(bytes_data)

后來我從數據庫加載 base64_data 並解碼回二進制

loaded_binary = base64.b64decode(base64_data)

現在我正在寫回二進制文件

bytes_load = open(loaded_binary,'wb').write()

在這里我收到錯誤

Traceback (most recent call last):

  File "<ipython-input-28-1d2986913b15>", line 1, in <module>
    bytes_load = open(loaded_binary,'wb').write()

UnicodeDecodeError: 'utf-8' codec can't decode byte 0x80 in position 0: invalid start byte

讀取和寫入二進制文件不允許編碼參數,我需要取回相同的模型。

您將解碼的二進制文件內容作為文件名傳遞給 open 函數。 我想而不是

bytes_load = open(loaded_binary,'wb').write()

你需要:

bytes_load = open('somefilename', 'wb').write(loaded_binary)

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM