Как сериализировать вложенный dict в python
Имеется список списков
params = {
'foo': {1: 0},
'bar': {2: 1}
}
необходимо преобразовать его в JSON, при этом сохраняя именно такой вид вложенности данных, т.к. в последствии этот список будет использоваться в UNIT-тесте для передачи через fastapi
params = {
'foo': {44, 55},
'bar': {baz[0].baz_id, 66}
}
fastapi_client.put('/some/url/is/here/', json=params)
пытаясь запустить код в таком виде получаю исключение
TypeError: Object of type set is not JSON serializable
Ответы (1 шт):
Автор решения: alex
→ Ссылка
set в list переделай. написано же. у тебя пример это "список списков". а ниже у тебя "список" сетов.
Сеты нельзя, а можно листы:
params = {
'foo': [44, 55],
'bar': [baz[0].baz_id, 66]
}
fastapi_client.put('/some/url/is/here/', json=params)
а если ты все таки хотел "список списков" то двоеточие забыл
params = {
'foo': {44: 55},
'bar': {baz[0].baz_id: 66}
}
fastapi_client.put('/some/url/is/here/', json=params)
И замечу что в твоем случае "список списков" это на самом деле словарь словарей)