49,500원
다른 수강생들이 자주 물어보는 질문이 궁금하신가요?
- 미해결예제로 공부하는 Python 100 문제풀이 Part.3
소멸자 관련 질문
안녕하세요.소멸자는 인스턴스 객체를 생성한 후에 소멸시에 사용하는 것으로 알고 있습니다.인스턴스 객체 p1만 소멸 시키고자 del p1을 수행했는데 p2까지 모두 소멸되었습니다.소멸자는 객체 소멸이아니라 클래스 전체를 소멸하는 것인지 알고 싶습니다.소멸자를 사용하는 이유가 메모리 효율때문인것같은데 어느 타이밍에 사용해야 하는지도 알고 싶습니다. 코드import random class Person: # 클래스 변수 count_class_var = 0 # 생성자 def __init__(self, name, age, power): self.name = name self.age = age self.power = power self.increase_obj() # 클래스 메서드 def increase_obj(self): Person.count_class_var += 1 # 소멸자 def __del__(self): print(self.name + ' 소멸되었습니다.') Person.count_class_var -= 1 def add_power_level(): return random.choice([i for i in range(1, 11)]) # [2]:클래스 사용 p1 = Person('홍길동', 20, add_power_level()) print(Person.count_class_var) p2 = Person('강감찬', 30, 9) print(Person.count_class_var) del p1 결과1 2 홍길동 소멸되었습니다. 강감찬 소멸되었습니다.
- 미해결예제로 공부하는 Python 100 문제풀이 Part.3
인덱스로는 왜 접근이 불까한가요?
for i in lst: if i < tail: tail = i for lst[i] in lst: if lst[i] < tail: tail = lst[i] 해당 코드에서 lst[i]로 접근하면 실행이 안되는데 i도 결국 lst내 인덱스를 차례대로 도는거니, lst[i]로 변경해도 가능한게 아닌가요?