Задать вопрос
lxstvayne
@lxstvayne
Люблю Python

Json представление класса при передаче в метод Python?

В общем хотелось бы, чтобы при передаче класса какой-нибудь функции, он превращался в json. Например, у меня есть класс Test и при передаче в requests.get(url=url, data=Test), Test превращался в json объект. Возможно ли такое или необходимо вручную вызывать __repr__() или __str__() на классе ?
  • Вопрос задан
  • 90 просмотров
Подписаться 1 Средний Комментировать
Помогут разобраться в теме Все курсы
  • Яндекс Практикум
    Python-разработчик
    10 месяцев
    Далее
  • Skillfactory
    Профессия Python-разработчик
    9 месяцев
    Далее
  • Нетология
    Fullstack-разработчик на Python + нейросети
    20 месяцев
    Далее
Решения вопроса 1
WolfInChains
@WolfInChains
Комментировать
Пригласить эксперта
Ответы на вопрос 1
Vindicar
@Vindicar
RTFM!
Гораздо лучше явно добавить метод to_json() в ваш класс, и явно вызывать его.
Это будет гораздо проще в реализации и понимании.

__str__() предназначен для человекочитаемого представления, а __repr__(), в идеале, для строкового представления, которое можно eval'нуть обратно в объект.
Под сериализацию в json они подходят плохо.
Ответ написан
Комментировать
Ваш ответ на вопрос

Войдите, чтобы написать ответ

Похожие вопросы