2017-03-19 3 views
-2

파이썬에서 매우 새로워졌습니다. 사용자가 원하는 변수의 수를 기반으로 변수를 생성하는 이진 CSP 인스턴스를 작성하려고합니다. 따라서 사용자가 4 개의 변수를 원하면 X1, X2, X3, X4를 생성 한 다음 목록에 추가합니다. 나는 아직도 당신의 코드는 간단한 이유로 작동하지 않는 것이바이너리 CSP 인스턴스

class CSP: 
    def __init__(self, variables): 
     self.variables = list(variables) 

    def get_variables(self): 
     return self.variables 

class Map(CSP): 
    n = input("Enter number of variables: ") 
    for i in range(n): 
     vare = 'X' + 'i' 

    def __init__(self): 
     super().__init__(self._collect_variables()) 

    def _collect_variables(self): 
     variables = [] 
     variables.append(self.vare) #list the user appends to 

def main(): 
    Map() 

if __name__ == '__main__': 
    main() 

답변

0

배치 할 수 없습니다, 그것은 작업을 시도했다 : 그것은 여러 변수를 생성하지 않습니다. 대신 그것은 단일 변수 'vare'를 업데이트합니다.

나는 다음과 같은 방법으로 그것을 수행해야합니다

class Map(CSP): 
    self._vare = [] 

    def __init__(self): 
     n = input("Enter number of variables: ") 
     for i in range(n): 
     vare.append ('X' + 'i') 

     super().__init__(self._get_variables()) 

    def _get_variables(self): 
     return self._vare 
+0

당신에게 너무 감사 일했다. – Iruoma

+0

@Iruoma 질문을 대답으로 표시하는 것을 잊지 마십시오. 건배! – CaptainTrunky

+0

오, 고마워, 그럴거야. – Iruoma