클래스 질문
388
작성한 질문수 11
class Fishcakemaker:
def __init__(self, **par): # 이것 때문에 오류가 났었구나... # 생성자는 이렇게 써주어야 함 __(_표시 2개)
self.size = 10
self.flavor = "팥"
self.price = 100
if "size" in par: # par라는 parameter에 size의 값이 있으면, 그 페러미터로부터 얻어지는 size의 값을 기본값으로 변경
self.size = par.get("size")
def __del__(self):
print("삭제되었습니다")
def __str__(self): # 이 함수명은 정해져 있음
return "<clss Fishcakemaker (size = {}, flavor = {}, price = {}>".format(self.size, self.flavor, self.price)
def show(self):
print("붕어빵 크기{}".format(self.size))
class MarketGoods(Fishcakemaker): # 위 클래스를 상속받음
def __init__(self, margin = 1000, **kwargs): # 해당 클래스가 받은 parameter를 상속 받은 클래스에게도 집어 넣는다.
super().__init__(**kwargs) # 상속받은 class의 생성자를 호출하기 위해서 super를 씀
self._market_price = self.price + margin # 여기 있는 price는 Fishcakemaker에서 가져온 것
def show(self):
print(self._market_price)
fish1= MarketGoods(flavor = 20, price = 500)
fish1.show()
저는 단지, market price만 구하고 싶었을 뿐인데,
여기서 부모 클래스에 있는 del 메서드가 실행되어서
삭제되었습니다. 라는 문구가 뜹니다.
del fish1이라고 써준 것도 아닌데, 왜 자동으로 출력이
될까요? 감사합니다.
답변 2
0
올려주신 코드를 정리해서 실행해봤더니 아무 문제 없이 실행됩니다만...
혹시 들여쓰기나 그런 부분 확인해보셨나요?
제가 수정한 부분은 하나도 없는 코드 입니다.
class Fishcakemaker:
def __init__(self, **par): # 이것 때문에 오류가 났었구나... # 생성자는 이렇게 써주어야 함 __(_표시 2개)
self.size = 10
self.flavor = "팥"
self.price = 100
if "size" in par: # par라는 parameter에 size의 값이 있으면, 그 페러미터로부터 얻어지는 size의 값을 기본값으로 변경
self.size = par.get("size")
def __del__(self):
print("삭제되었습니다")
def __str__(self): # 이 함수명은 정해져 있음
return "<clss Fishcakemaker (size = {}, flavor = {}, price = {}>".format(self.size, self.flavor, self.price)
def show(self):
print("붕어빵 크기{}".format(self.size))
class MarketGoods(Fishcakemaker): # 위 클래스를 상속받음
def __init__(self, margin = 1000, **kwargs): # 해당 클래스가 받은 parameter를 상속 받은 클래스에게도 집어 넣는다.
super().__init__(**kwargs) # 상속받은 class의 생성자를 호출하기 위해서 super를 씀
self._market_price = self.price + margin # 여기 있는 price는 Fishcakemaker에서 가져온 것
def show(self):
print(self._market_price)
fish1= MarketGoods(flavor = 20, price = 500)
fish1.show()

38강 = 연산자 더하고 빼기
0
60
2
주석처리
0
116
1
함수의 파라미터값 msg
0
155
1
강의자료 이미지 안나옴
0
239
3
강의자료 질문 두번째
0
165
3
강의자료 관련 질문
0
116
1
파이썬 예외 처리 try / except 파일 처리 코드가 실행이 안됩니다.
0
235
1
소수 너무 어려워요
0
245
1
imagefont 함수 사용
0
239
1
pylint
0
357
1
add 함수 문의 ㅠㅠ
0
283
1
형식 문의드립니다.
0
209
1
변수 명을 왜 src, tar로 하셨는지 궁금합니다.
0
602
1
숫자야구 코드를 짜 봤는데 뭔가 이상합니다.
0
253
1
zsh: command not found: pylint
0
269
1
텔레그램 봇 만들기 코드 실행이 안됩니다 박사님..ㅠ
0
546
1
질문드립니다.
1
374
2
list.reverse() 출력에 대해서 질문있습니다.
1
433
1
데코레이터 함수 및 동작시간 질문입니다.~
1
323
2
opencv 사용하면서 궁금한점 (해상도)
1
781
1
질문드립니다.
1
299
1
아래 오류가 뜨면서 vscode가 컴파일이 되지 않는데.. 혹시 왜이럴까요?
1
445
1
크롤링안되는 현상 문의 드립니다.
1
421
1
파이썬 크롤링 관련 문의
1
277
1





