以下のようなプログラムを実行すると、エラーメッセージが表示されました。
import json with open('test.json', 'r') as f: l = json.load(f) for d in l: print(d)
json.decoder.JSONDecodeError: Expecting property name enclosed in double quotes: line 7 column 3 (char 97)
"test.json"の中身を確認すると、最初のデータの最後の要素に","ついています。これが原因のようです。
[ { "id":"1", "first_name":"Taro", "last_name":"Sato", "gender":"Male", }, { "id":"2", "first_name":"Hanako", "last_name":"Suzuki", "gender":"Female" } ]
最後の要素の","を削除して、再度実行すると
{'id': '1', 'first_name': 'Taro', 'last_name': 'Sato', 'gender': 'Male'}
{'id': '2', 'first_name': 'Hanako', 'last_name': 'Suzuki', 'gender': 'Female'}
期待通りの動作となりました。
このエラーは、以下のように要素がシングルコーテーションで括られている場合にも発生します。
'id':'1',
今日はここまで。