inflearn logo
강의

강의

N
챌린지

챌린지

멘토링

멘토링

N
클립

클립

로드맵

로드맵

지식공유

파이썬 무료 강의 (기본편) - 6시간 뒤면 나도 개발자

사용자 정의 예외처리

사용자지정 예외 클래스 정의 구문의 상세 의미 질문

205

아쿠아라이드

작성한 질문수 22

1

안녕하세요? 강의해 주신 내용에 많은 도움을 받고 있습니다.

한가지 질문은 강의 1:33 이후에 

class BigNumberError(Exception): 

pass 

로 되어 있는 부분에서 pass 대신 삽입하신 아래 네 문장을

삽입하지 않고 pass 로 그대로 두어도 프로그램 실행이 되며, 실행 결과도 동일한데요,

 

def __init__ (self, msg):

self.msg = msg

def __str__(self):

return self.msg

1. 위 네 줄의 내용이 혹시... 부모 클래스인 Exception 에 이미 동일하게 정의되어 있는 속성이기 때문인 것은 아닌지... 문의드립니다.

2.  __init__(self, msg) 메서드에 의해서 해당 예외 클래스에 외부 메세지를 입력 받아서 msg 속성에 저장할 수 있는 특성을 부여한다는 것으로 이해하되는데,  __str__() 메서드는 어떤 의미를 가지는지.. 문의드립니다. 알것 같으면서도 애매하게 느껴지는 부분이 있네요... ^^;;;

python

답변 1

2

나도코딩

맞습니다.  __str__  이 없어도 msg 에 입력한 값이 출력됩니다. 하지만 만약 에러 메시지를 개발자가 변경하여 

return [에러코드 001] + self.msg

이런 식으로 출력하고 싶을 수도 있기 때문에 __str__ 에 대해 설명을 드린 것입니다. ^^

마찬가지로 예외 msg 를 정의할 때도 입력받은 값을 가공하여 다르게 값을 처리할 수도 있겠지요!

quiz 8 오류 문제

0

70

1

str() 작성 위치

0

51

1

아나콘다

0

60

1

윈도우 설치 도와주세요

0

74

1

std_weight함수에서weight만return가능한가요?

0

68

1

오른쪽위 실행버튼을 누르면 터미널에 에러가 뜨고 컨트롤+F5를 누르면 에러가 안뜹니다.

0

34

1

설치해서 시작하는데 문제가 있습니다.

0

69

1

함수 입력할 때 설명 툴팁 나오게 하려면 어떻게 하나요?

0

104

1

2장 환경설정 문의

0

74

1

스타크래프트 프로젝트

0

74

1

python 파일명.py 입력시 Python 출력

0

133

1

로드맵 질문있습니다!

0

85

2

오류

0

74

1

질문 있습니다.

0

75

1

블로그에 학습한 내용을 정리해도 괜찮을까요?

0

172

1

#퀴즈 3의 5번 질문

0

72

1

print("ㅋ"*5) 에 대한 결과가 도출되지 않습니다

0

81

1

가변인자의 위치가 중요한가요?

0

79

1

vscode옛날 버전 설치

0

221

1

글자색상이 선생님처럼 안나옵니다

0

186

1

슬프네

0

156

1

quiz 6번 관련 문의입니다.

0

129

1

퀴즈#3에 대해서 이렇게 작성해도 되나요?

0

194

1

피드백 부탁드립니다

0

93

1