반응형
동적 파이썬 객체를 json으로 변환
중복 가능성 :
Python 직렬화 가능 객체 json
동적 파이썬 객체를 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 ...
Python 2.6을 사용하여 다음 코드를 사용합니다.
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
사용자가 어떤 유형의 하위 객체를 넣을 수 있는지 모르겠습니다 c
. 속성이 객체인지 감지하고 __dict__
자동으로 구문 분석 할 수있는 스마트 한 솔루션이 있습니까?
에 하위 객체를 포함하도록 업데이트 되었습니다 c
.
default=
매개 변수 ( doc )를 지정하십시오 .
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__
은 해당 개체에 속성 이름을 매핑하는 사전입니다.
참고 URL : https://stackoverflow.com/questions/7408647/convert-dynamic-python-object-to-json
반응형
'IT박스' 카테고리의 다른 글
WPF TextBox에 이벤트 붙여 넣기 (0) | 2020.11.30 |
---|---|
Visual Studio 솔루션에서 모든 중단 점 지우기 (0) | 2020.11.30 |
GDB 디버깅 세션을 자동화하는 가장 좋은 방법은 무엇입니까? (0) | 2020.11.30 |
Hibernate LazyInitializationException을 수정하는 방법 : 역할 컬렉션을 지연 초기화하지 못했습니다. 프록시를 초기화 할 수 없습니다-세션 없음 (0) | 2020.11.30 |
파일 업로드 (0) | 2020.11.30 |