json.decoder.JSONDecodeError 常見錯誤彙總
1.Expecting property name enclosed in double quotes
錯誤原因:屬性名沒有用雙引號包圍。
示例程式碼:
import json string = ''' [{ 'name': 'XiYou', age': '23' }] ''' json_obj = json.loads(string) print(json_obj)
錯誤截圖:

2. Invalid control character
錯誤原因:JSON資料格式不規範,包含無效的控制字元(\n等)。
示例程式碼:
import json string = ''' [{ "name": "XiYou\n", "age": "23" }] ''' json_obj = json.loads(string) print(json_obj)
錯誤截圖:

2
3. Unterminated string
錯誤原因:屬性名/值的引號不匹配(字串未終止)。
錯誤來源:手動輸入字串的過程。
示例程式碼:
import json string = ''' [{ "name": "XiYou", "age": "23 }] ''' json_obj = json.loads(string, strict=False) print(json_obj)
錯誤截圖:

3
4. Expecting ',' delimiter
錯誤原因:字典物件間的分隔符錯誤。
錯誤來源:處理網頁資料過程中(例如:爬蟲爬取解析處理過程)
示例程式碼:
import json string = ''' [{ "name": "XiYou", "age": "23" } { "name": "Northxw", "age": "22" }] ''' json_obj = json.loads(string) print(json_obj)
**錯誤截圖: **

4
Last
想多瞭解JSON的可以進傳送門: http://www.json.org/json-zh.html