파이썬에서 동적 객체 (다른 객체 내부)를 만들고 속성을 추가하고 싶습니다.
나는 시도했다 :
obj = someobject
obj.a = object()
setattr(obj.a, 'somefield', 'somevalue')
그러나 이것은 효과가 없었습니다.
어떤 아이디어?
편집하다:
for
값 목록을 반복하는 루프 에서 속성을 설정하고 있습니다.
params = ['attr1', 'attr2', 'attr3']
obj = someobject
obj.a = object()
for p in params:
obj.a.p # where p comes from for loop variable
내가 얻을 것입니다 위의 예에서 obj.a.attr1
, obj.a.attr2
, obj.a.attr3
.
루프 에서 setattr
수행하는 방법을 몰랐기 때문에 함수를 사용했습니다 .obj.a.NAME
for
p
위의 예에서 값을 기준으로 속성을 어떻게 설정 합니까?
a = object()
당신이 필요합니다 obj.a = object()
. 다시 한 번 예제에 대해 이야기하고 있습니다. 실제 코드에서 객체 내부의 객체가 유용 할 수 있습니다.