소멸자 관련 질문
256
1 câu hỏi đã được viết
안녕하세요.
소멸자는 인스턴스 객체를 생성한 후에 소멸시에 사용하는 것으로 알고 있습니다.
인스턴스 객체 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
홍길동 소멸되었습니다.
강감찬 소멸되었습니다.
Câu trả lời 1
0
저도 똑같은 질문이 있습니다
저는 심지어 del 명령을 실행하지도 않았는데
생성된 객체들이 모두 없어질 때까지 자동으로 소멸자가 작동되었습니다
혹시 질문에 대한 해답을 얻으셨나요?
수강 기간 연장 가능 여부 문의드립니다.
0
6
1
ols
0
6
2
2유형 작성관련 질문(일반 심화)
0
13
1
2유형 작성관련 질문
0
9
1
2유형 object컬럼 개수 다르면
0
10
1
코딩팡질문이요ㅠㅠ
0
13
1
관찰값과 기대값의 개념이 헷갈립니다.
0
11
1
작업형2 ID 컬럼 삭제 질문
0
20
2
2유형 작성관련 질문
0
10
1
memoryerror 질문
0
12
1
작업형 유형2 이렇게 고정 템플릿으로 가져가도 될까요?
0
13
0
ID 삭제 필수 인가요?
0
17
3
띄어쓰기
0
11
1
7회 기출문제 작업형1번 df 변환 후 저장되는 방식 질문
0
13
1
매일 사용시 토큰사용량
1
14
2
3 유형 귀무가설, 대립가설
0
19
2
공부 순서
0
11
1
인코딩 관련 질문 있습니다
0
21
2
작업형3 이원분산분석 sm에서불러오기 / anova_lm 차이
0
21
2
벡터저장소 코드 실행시 경고메시지가 나타납니다.
0
11
1
2유형 원핫인코딩 오류
0
22
2
시험장에서 주석 단축키 안될 때 많나요?
0
26
2
라벨인코딩 방식
0
24
2
인덱스로는 왜 접근이 불까한가요?
0
198
0

