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