Как преобразовать данные JSON в объект Python

Я хочу использовать Python для преобразования данных JSON в объект Python.

Я получаю объекты данных JSON из API Facebook, которые я хочу сохранить в моя база данных.

Мое текущее представление в Django (Python) ( request.POST содержит JSON):

response = request.POST
user = FbApiUser(user_id = response['id'])
user.name = response['name']
user.username = response['username']
user.save()
  • Это работает нормально, но как мне обрабатывать сложные объекты данных JSON?

  • Не мог бы Не было бы лучше, если бы я мог каким-то образом преобразовать этот объект JSON в объект Python для удобства использования?

240
задан fragilewindows 17 November 2016 в 05:26
поделиться

1 ответ

При использовании Python 3.6 или более новые Вы могли бы взглянуть на squema - легкий модуль для структур данных со статическим контролем типов. Это делает Ваш код легким читать, одновременно обеспечивая простое подтверждение правильности данных, преобразование и сериализацию без дополнительной работы. Можно думать о нем как о более сложной и самоуверенной альтернативе namedtuples и dataclasses. Вот то, как Вы могли использовать его:

from uuid import UUID
from squema import Squema


class FbApiUser(Squema):
    id: UUID
    age: int
    name: str

    def save(self):
        pass


user = FbApiUser(**json.loads(response))
user.save()
0
ответ дан 23 November 2019 в 03:17
поделиться
Другие вопросы по тегам:

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