저는 파이썬에 매우 익숙해 져서 친절합니다. 내 프로그램의 모든 생성 된 개체 인스턴스를 추적하는 수단으로 모든 내 프로그램의 기본 디렉터리로 전역 디렉터리 개체 디렉터리를 만들려고합니다.Python : for 루프를 사용하여 객체 목록에서 참조를 꺼내십시오.
그래서 ..
나는 객체 참조 (하지의 id)의리스트를 포함하는 클래스를 만듭니다. 예 :class objDirectory:
name = ""
count = 0
objDir = []
def __init__(self):
print("Initiating object directory.")
name = "objDirectory"
self.count= 1
self.objDir = [ self ]
return
def getObj(self, name):
print("Searching directory for:", name)
for o in self.objDir:
if o.name is name:
print("Returning:", name)
return obj
else:
print("Search failed")
return
그러나, 한 번 개체가 목록에 추가되고 나는 내 객체를 반환하지 않습니다 가져 오기 스크립트를 실행합니다. 심지어는 directory.objDir [x]를 사용하여 확인합니다. (이 항상 내 개체를 참조).
내가 뭘하지 않거나 잘못하고 있니?
감사합니다.
결과 :
,setDirectory() 객체 디렉토리를 초기화. 테스트 중복 체크 로깅 : TEST1 개체 수 : 2 T1 = directory.getObj ("TEST1") 디렉토리에 대한 검색 : TEST1 검색이 실패 글로벌 디렉토리 참조 테스트 = OBJ ("테스트") 에서 시작 설정 인쇄 (directory.objDir) [0x032C86F0에서 < 메인 .objDirectory object>, 0x032C8710에서 < 메인 .OBJ object>]
정말 고맙습니다. 여기에있는 것들 중 일부를 머리에 감쌀 필요가 있지만, 여전히 배울 점이 많습니다. – user3312001