2
변수를 '키'로 사용하여 'self'구문에서 저장된 값을 얻으려면 어떻게해야합니까?이름으로 변수 가져 오기
일부 코드 :
class Foo:
def __init__(self, n1, n2, n3, ...):
self.node_1 = n1
self.node_2 = n2
self.node_3 = n3
...
def get_node(n):
return self."node_"+n # This is wrong. What should I use?
- 내가 21의 값을 가지고 있기 때문에 나는, switch 문을 수행 할 수 없습니다
...
그냥
n = 2
경우, 추가 명확하게하기 값을self.node_2
으로 지정하겠습니다. 그래서n = 3
당신은getattr(class_obj, 'property')
을 사용할 수있는 등
'self.nodes'리스트가 없습니까? 문자열에 저장된 이름으로 속성에 액세스 할 수 있지만 노드 목록은 훨씬 더 의미가 있습니다. – user2357112
Ad-hoc 솔루션? 'getattr' 함수. 정확한 해결책은 항상 "동적 변수 이름이 필요합니다"는 dict (이름이 실제로는 임의적이어야하는 경우) 또는 목록 (원하는 경우 var1, var2, ... varN)을 사용하는 것입니다. –
이 질문은 중복되지 않습니다. 동일한 대답을 가진 질문은 * 항상 * 같은 질문이 아닙니다. –