1. 程式人生 > >TypeError: Won't implicitly convert Unicode to bytes; use .encode()的解決方法

TypeError: Won't implicitly convert Unicode to bytes; use .encode()的解決方法

用python3寫一個lmdb讀寫指令碼的時候,報出了這個錯誤:TypeError: Won’t implicitly convert Unicode to bytes; use .encode()。
截圖如下:
在這裡插入圖片描述
可以看出在27行定義了一個字串,在29行就報出了錯誤。而錯誤的最後也寫了 use .encode()。所以,需要在29行的字串後加上 .encode() 即可。如下:

lmdb_txn.put(keystr.encode(), datum.SerializeToString())

完整程式碼請參考上一篇博文:lmdb資料集的封裝和打包