반응형
동적 python 개체를 json으로 변환
동적 python 객체를 JSON으로 변환하는 방법을 알고 싶습니다.개체는 여러 수준의 개체 하위 개체를 가질 수 있어야 합니다.예를 들어 다음과 같습니다.
class C(): pass
class D(): pass
c = C()
c.dynProperty1 = "something"
c.dynProperty2 = { 1, 3, 5, 7, 9 }
c.d = D()
c.d.dynProperty3 = "d.something"
# ... convert c to json ...
이 코드를 사용해 보았습니다.
import json
class C(): pass
class D(): pass
c = C()
c.what = "now?"
c.now = "what?"
c.d = D()
c.d.what = "d.what"
json.dumps(c.__dict__)
에러가 나서TypeError: <__main__.D instance at 0x99237ec> is not JSON serializable
.
클래스인 서브오브젝트가 자동으로 시리얼화되도록 하려면 어떻게 해야 합니까?__dict__
?
를 지정합니다.default=
파라미터:
json.dumps(c, default=lambda o: o.__dict__)
json.dumps(c.__dict__)
일반적인 JSON 오브젝트를 얻을 수 있습니다.
이 패키지를 사용해 보십시오. python-jsonpickle
임의 개체 그래프를 JSON으로 직렬화하기 위한 Python 라이브러리입니다.거의 모든 Python 객체를 JSON으로 변환할 수 있습니다.또한 오브젝트를 Python으로 재구성할 수 있습니다.
json.dumps
는 매개 변수로 딕토닉을 예상합니다.예를 들면c
, 아트리뷰트c.__dict__
는 대응하는 오브젝트에 Atribute 이름을 사전에 매핑하는 것입니다.
언급URL : https://stackoverflow.com/questions/7408647/convert-dynamic-python-object-to-json
반응형
'source' 카테고리의 다른 글
T-SQL에 대한 GeSHI 구문 강조 표시 개선 (0) | 2023.03.23 |
---|---|
Angularjs는 상위 범위의 변화를 감시합니다. (0) | 2023.03.23 |
스프링 부트에서의 스프링 관리 휴지 상태 인터셉터 사용 방법 (0) | 2023.03.18 |
Oracle의 인덱스 구성 테이블을 사용해야 하는 경우아니면, 언제 하면 안 될까요? (0) | 2023.03.18 |
초보자용 XSLT 레퍼런스 (0) | 2023.03.18 |