2017-02-20 1 views
0

클래스를 여러 번 사용하는 프로그램을 만들고 싶습니다. 나는 a11 = animal() a12 = animal()과 같은 많은 변수를 생성하고 싶지 않습니다. 또한 루프 내에서 exec()에 의해 생성 되더라도 많은 변수를 관리하지 않아도되는 것을 선호합니다. 사전 키에 클래스를 지정하거나 장소를 나열하거나 다른 관리 방법으로 쉽게 사용할 수 있습니다. 감사!여러 변수에 클래스 할당 방지

+1

나는 당신이 클래스의 * 인스턴스 *를 의미한다고 생각합니다. 이러한 인스턴스를 원하는 데이터 구조로 둘 수 있습니다. –

+0

'animals'이라는 이름의 'list'와 같은 클래스 인스턴스를 컨테이너에 저장할 수 있습니다. 그렇게하면 "이름"이 색인이됩니다. '동물 [0]'과'동물 [42]'. 변수를 동적으로 생성하기 위해'exec'를 사용해서는 안됩니다. [_ 동적으로 변수를 생성하지 않으려는 이유 _] (http://stupidpythonideas.blogspot.com/2013/05/why-you-dont-want-to-dynamically-create.html) 및 [_ 데이터를 유지하십시오 변수 이름 _] (http://nedbatchelder.com/blog/201112/keep_data_out_of_your_variable_names.html). – martineau

+0

감사합니다! 나는 보통 내가 처음에 일하는 코딩 환경에서 시도해 보았어야했다. 신속한 답변에 감사드립니다. :) – Phonzi

답변

0

데이터 구조가있는 클래스의 인스턴스를 만들 수 있어야합니다. 예를 들어 : 그건 당신이 원하는 경우

my_list = [] 
for i in range(10): 
    #Animal() is a class you've defined elsewhere 
    my_list.append(Animal()) 

이제을 my_list 변수는, 당신의 동물 클래스

또한 사전에이를 할당

9 개 인스턴스를 포함해야합니다.

관련 문제