1. 程式人生 > >Python異常:TypeError: a bytes-like object is required, not 'str'

Python異常:TypeError: a bytes-like object is required, not 'str'

Python異常:TypeError: a bytes-like object is required, not ‘str’

import json

str = [{"userName" : "UserPython", "age" : 20}, (2, 3), 1]

with open("jsonTest.txt", "wb") as fp:
    json.dump(str, fp = fp)

異常分析:open(“jsonTest.txt”, “wb”)指定檔案以二進位制寫模式開啟,所以需要以二進位制寫入,不能寫入字串,而上面程式碼中str是一個列表字串,所以報異常。

解決方法:因為上面程式碼中str是列表字串,所以將open()函式中的開啟檔案方式改為“w”寫模式即可

import json

str = [{"userName" : "UserPython", "age" : 20}, (2, 3), 1]

with open("jsonTest.txt", "w") as fp:
    json.dump(str, fp = fp)