Coding/초보자를 위한 파이썬 300제
초보자를 위한 파이썬 300제 // 259 클래스 소멸자
포스트it
2021. 3. 27. 23:44
728x90
반응형
문제
사람 (human) 클래스에 "나의 죽음을 알리지 말라"를 출력하는 소멸자를 추가하세요.
>>> areum = Human("아름", 25, "여자")
>>> del areum
나의 죽음을 알리지 말라
내풀이
class Human:
def __init__(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
def who(self):
print(f"이름: {self.name}, 나이: {self.age}, 성별: {self.gender}")
def setInfo(self, name, age, gender):
self.name = name
self.age = age
self.gender = gender
def __del__(self):
print("나의 죽음을 알리지 마라")
areum = Human("아름", 25, "여자")
del areum
결과값
나의 죽음을 알리지 마라
정답
class Human:
def __init__(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex
def __del__(self):
print("나의 죽음을 알리지마라")
def who(self):
print("이름: {} 나이: {} 성별: {}".format(self.name, self.age, self.sex))
def setInfo(self, name, age, sex):
self.name = name
self.age = age
self.sex = sex
areum = Human("아름", 25, "여자")
del(areum)
__init__은 생성자 메서드,
__del__은 소멸자 메서드,
개체를 생성할 때는 <형식 이름(인자)>을 사용하고
소멸할 때는 <del 변수명>을 사용합니다.
728x90
반응형