Python
Study Of Landvibe
made by 김건희
오늘의 주제Module
Exception
Outline
1. Module & Package
2. Exception
Module
함수 : 특정 행위에 대해 기술한 소스 코드
클래스 : 특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서
모듈 : 함수, 클래스 등을 포함하여 독립적인파일(.py)로 저장하여 언제든지 호출하여 재사할 수 있는 공통 소스 코드들의 집합
Don’t Repeat Yourself!
>>> “같은 소스를 반복해서 작성하지 말라”
소스 재사용
함수 : 특정 행위에 대해 기술한 소스 코드
클래스 : 특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서
모듈 : 함수, 클래스 등을 포함하여 독립적인파일(.py)로 저장하여 언제든지 호출하여 재사할 수 있는 공통 소스 코드들의 집합
Don’t Repeat Yourself!
>>> “같은 소스를 반복해서 작성하지 말라”
소스 재사용
Module
Module
특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서를 담은 .py 파일
1. 모듈의 정의
Module
특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서를 담은 .py 파일
1. 모듈의 정의
특정 행위 : Method
Module
특정 상태 : Attribute
특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서를 담은 .py 파일
1. 모듈의 정의
특정 행위 : Method
Module
특정 상태 : Attribute
특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서를 담은 .py 파일
1. 모듈의 정의
특정 행위 : Method
명세서 : Class Name
Module
특정 행위와 상태를 담을 수 있는 객체를 생성하기 위한 명세서를 담은 .py 파일
1. 모듈의 정의
특정 행위 : Method1
특정 상태 : Attribute1
명세서 : Class1특정 행위 : Method2
특정 상태 : Attribute2
명세서 : Class2특정 행위 : Method3
특정 상태 : Attribute3
명세서 : Class3
.py 파일
Module
모듈들을 특정 기준에 따라 모아 놓은 단위
2. package
모듈
패키지
Module
import <모듈명>
from <패키지.모듈명> import <클래스, 메소드, 함수>
from <패키지.모듈명> import <클래스, 메소드, 함수> as <alias name>
2. 모듈 사용하기
BasicPracitce/fibo.pyBasicPracitce/ModuleEx.py
Module
__name__ : 모듈 혹은 함수의 이름을 가지고 있는 함수, 해당 모듈이 시작점이면 “__main__”을 리턴한다
2. 모듈 사용하기
BasicPracitce/ModuleEx.py
Module
sys 모듈 사용하기python <모듈.py> <argv…> : 모듈.py = argv[0], argv는 array
2. 모듈 사용하기
Exception
문법 실수, 잘못된 타입 사용 등의 소스코드가 잘못됬을 때 발생하는 것
1. 에러 (Errors)
Exception
소스 실행 중에 에러가 발생하는 경우
2. 예외 (Exception)
예외의 종류
https://docs.python.org/3.2/library/exceptions.html
에러와 예외의 본질은 같으나용도의 차이가 있습니다.
> 에러를 다루기 위한 것이 예외라고 생각하고 넘어갑시다.
Exception
try:
<예외 발생 가능성이 있는 문장>
except <예외 종류> :
<예외 처리 문장>
except (예외1, 예외2) :
<예외 처리 문장>
except <예외> as <인자> :
<예외 처리 문장>
else:
<예외가 발생하지 않은 경우, 수행할 문장>
finally:
<예외 발생 유무에 상관없이 try 블록 이후에 사용할 문장>
3. 예외 처리
Exception
3. 예외 처리
예시
Exception
3. 예외 처리
예시
Exception
3. 예외 처리
예시
Exception
3. 예외 처리
주의 할것!
Exception
4. raise 구문
raise [Exception] : 해당 예외를 발생시킵니다.
raise [Exception(data)] : 예외 발생 시 관련 데이터를 전달합니다.
raise : 발생된 예외를 상위로 전달합니다.
5. 사용자 정의 예외
Exception 객체를 상속받아 생성class ExceptionName(Exception):
pass
Exception
4, 5. raise, 사용자 정의 예외
예시
코드랩 예고
땅스타그램!