У вас просто нет действительного JSON (в вашем коде Python нет ничего плохого).Вы не используете функциональность массива правильно.Массив JSON выглядит следующим образом:
{"some_array": ["first item", "second item", ..., "last item"]}
it не выглядит следующим образом (это то, что вы имели, и почему вы получаете сообщение об ошибке):
{"some_array": ["first item"], ["second item"], ..., ["last item"]}
Короче говоря, элементы вашего списка разделены запятой внутри квадратных скобок.Вот как должен выглядеть ваш JSON (массив sensor
исправлен и довольно напечатан):
{
"pre_trigger": 4,
"sampling frequency": 1652,
"record length": 15.0,
"sensors":
[
{
"model": "393B05",
"serial": "46978",
"sensitivity": 10030,
"sensitivity_units": "mV/g",
"sensor_type": "Accelerometer",
"units": "g",
"location": [7.01, -0.19, 0],
"location_units": "m",
"direction": [0, 0, 1],
"trigger": true,
"trigger_value": 0.005,
"max_val": 0.45,
"min_val": -0.45,
"comments": "Inside B122 next to bookshelf",
"channel": "cDAQ1Mod2/ai0"
},
{
"model": "393B05",
"serial": "47085",
"sensitivity": 9980,
"sensitivity_units": "mV/g",
"sensor_type": "Accelerometer",
"units": "g",
"location": [9.65, -0.19, 0],
"location_units": "m",
"direction": [0, 0, 1],
"trigger": true,
"trigger_value": 0.005,
"max_val": 0.45,
"min_val": -0.45,
"comments": "Inside B122 under the whiteboard",
"channel": "cDAQ1Mod2/ai1"
}
],
"parameters": {
"general": [],
"specific":
[
"Walking direction",
"Person ID"
]
}
}
Я рекомендую всегда сохранять ваш JSON хорошо напечатанным (даже на диске), так как это облегчаетчтения / понимания.Частью привлекательности формата JSON является то, что вы можете легко увидеть его как человека.
Остальная часть вашего кода, который вы опубликовали, работала нормально после этого исправления.
HTH.