클로저 만족 조건
- 어떤 함수의 내부 함수일 것
- 내부 함수가 외부 함수의 변수를 참조할 것
- 외부 함수가 내부 함수를 반환할 것
구문 오류는 맞는 코드로 수정하는 것 외에는 방법이 ❌
try - except
구문문자열이 숫자인지 판별하는 함수 isdigit()
로 정수만 입력받기
++ 음수도 판별하려면 lstrip
사용!
조건문의 단점 : 예외 발생 상황을 모두 예측해 처리해야한다는 것..!
try:
예외가 발생할 수 있는 코드
except (발생 오류 (as 발생 오류 변수)):
예외가 발생했을 때 실행할 코드
except
구문에 아무것도 넣지 않고 try
구문만 사용pass
키워드를 함께 사용해야 함!try:
예외가 발생할 수 있는 코드
except:
에외가 발생했을 때 실행할 코드
else:
예외가 발생하지 않았을 때 실행할 코드
else 구문은 기존의
try - except
구문과 큰 차이가 없어 개인의 선택으로 사용(단, 알아두는 것이 좋다!)
finally
: 예외의 발생 여부와 관계없이 무조건 실행하고자 하는 코드를 작성try:
예외가 발생할 수 있는 코드
except:
예외가 발생했을 때 실행할 코드
else:
예외가 발생하지 않았을 때 실행할 코드
finally:
예외와 관계없이 무조건 실행되는 코드
raise
키워드 : 에러를 지정하고 에러 메세지를 넣음.raise 에러('에러 메시지')
NameError: name 'a' is not defined
-> 코드 상에서 a 자체를 선언한 적이 없는 것!ZeroDivisionError: division by zero
IndexError: list index out of range
ValueError: list.remove(x): x not in list
get
메서드 활용해 해결 : print(mydict.get('Park'))
AttributeError: module 'time' has no attribute 'month'
FileNotFoundError: [Errno 2] No such file or directory: 'ex.txt'
TypeError: can only concatenate list (not "str") to list
안녕하세요, 하얀님. 데싸 3기 그루입니다. 노션에서 발견하고 들어왔는데, 정말 정리를 잘해놓으셨네요👍👍 글을 잘 정리해놓으셔서 종종 들어오게 될 것 같습니다. 많이 배워갑니다🙂