JSON 데이터를 Django 데이터베이스 저장소용 Python 개체로 변환
Django 애플리케이션에는 다음 작업에 필요한 Facebook API의 JSON 데이터가 있습니다. 데이터베이스에 저장됩니다. 현재는 복잡한 데이터 구조의 경우 번거롭고 비효율적일 수 있는 변환을 수동으로 처리하고 있습니다.
다행히도 JSON의 object_hook 인수를 사용하여 JSON 데이터를 Python 객체로 변환하여 이 프로세스를 단순화하고 가속화할 수 있는 방법이 있습니다. .
Python 3 솔루션
Python 3을 사용하면 JSON 데이터를 사전 키에 해당하는 속성을 가진 객체로 우아하게 변환할 수 있습니다.
import json from types import SimpleNamespace data = '{"name": "John Smith", "hometown": {"name": "New York", "id": 123}}' x = json.loads(data, object_hook=lambda d: SimpleNamespace(**d))
이것은 name, hometown.name 및 hometown.id 속성을 가진 객체를 반환합니다.
Python 2 솔루션
Python 2의 경우 명명된 Tuple 및 object_hook를 사용할 수 있습니다. :
import json from collections import namedtuple data = '{"name": "John Smith", "hometown": {"name": "New York", "id": 123}}' x = json.loads(data, object_hook=lambda d: namedtuple('X', d.keys())(*d.values()))
Python 3 솔루션의 x와 동일한 속성을 가진 객체를 반환합니다.
JSON을 객체로 변환할 때의 이점
JSON 데이터를 Python 객체로 변환하면 다음과 같은 이점을 얻을 수 있습니다.
위 내용은 효율적인 Django 데이터베이스 저장을 위해 JSON 데이터를 Python 개체로 변환하는 방법은 무엇입니까?의 상세 내용입니다. 자세한 내용은 PHP 중국어 웹사이트의 기타 관련 기사를 참조하세요!