여러 개의 중첩 된 매개 변수 그룹을 포함하는 Python 클래스가 있습니다.파이썬 : 어떤 객체의 네임 스페이스를 현재 네임 스페이스로 가져올 수 있습니까?
class MyClass(object):
#some code to set parameters
def some_function(self):
print self.big_parameter_group.small_parameter_group.param_1
print self.big_parameter_group.small_parameter_group.param_2
print self.big_parameter_group.small_parameter_group.param_3
매개 변수에 액세스하는 데 필요한 코드를 줄이려고합니다. some_function의 맨 위에 매개 변수 이름 (param_1, param_2, param_3)으로 액세스하려면 어떻게해야합니까? 그리고 some_function뿐만 아니라 모든 메서드에 대해이 바로 가기를 적용하려면 MyClass의 어딘가에 배치해야합니까?
예를 들어, spg = elf.big_parameter_group.small_parameter_group을 입력하여이 문제를 부분적으로 해결했습니다. 문제를 부분적으로 해결합니다. 이제 spg.param_1 만 입력해야합니다.하지만 spg를 제거 할 수 있는지 궁금합니다. 또한 일반적으로 3 개 이상의 매개 변수가 있으므로 이름을 모두 바꾸면 나를위한 보일러 판입니다. – user517893
@Jakob은 값을 한 번 캐시하고 업데이트를받지 않으며이 메서드를 사용하여 값을 설정할 수도 없다는 점에 유의하십시오. – Davy8
@ Davy8, '값을 한 번 캐시 하시겠습니까? 그것은 문제의 가치가 가변적인지 불변인지에 전적으로 달려 있습니다. 그것을 '설정'하는 것과 동일합니다. –