8장 모듈
- 모듈이란?
- import 사용법
- 모듈 찾는방법
■8장 목차
- 모듈이란. ? : 함수 생성한 것들을 모아놓은 스크립트
- import사용법 : 다른 모듈내의 코드에 접근 가능하게 하는 명령어
- 모듈찾는방법 : sys.path의 내용을 출력해서 파이썬이 어떻게 모듈을 탐색해 나가는지 확인
- 메인모듈과 하위모듈 : 오늘 부터 !배울 내용
- 패키지
- __init__.py
- site - package
■ 8.4 메인 모듈과 하위 모듈 (p 171)
파이썬 문법 + 중요한 알고리즘 20가지는 외워버려야 한다.
- 코드를 어떻게 만드느냐? 함수 생성, 함수 생성을 한 것을 모아 놓은 모듈
- 코드를 어떻게 실행하느냐 ? 메인 모듈 ( 최상위 수준으로 실행되는 스크립트 )
예 : 실뭉치의 끝
- _name_ (내장 전역변수) 를 이용하면 지금 쓰고있느 모듈이 메인 모듈인지 하위 모듈인지 확인할 수 있다.
메인 모듈: _name_ ---> main 이라고 나오고
하위 모듈: _name_ ---> 모듈명으로 나온다
예제 : top_level.py 란느 이름으로 저장하고 실행
print('name : {0} '.format(__name__) )
결과 : name : __name__
예제2: sub.py 라는 이름으로저장하고 실행
print("beginning of sub.py...")
print('name : {0}'.format(__name__) )
print("end of sub.py...")
먼저 실행하면 결과가 어떻게 나오는가 ?
■ 8.5 패키지
패키지란 ? 모듈을 모아놓은 디렉토리를 말한다 ( 모듈 꾸러미)
모듈일나? 실행할 함수들을 모아놓은 스크립트
글너데 평범한 디렉토리가 파이썬의 패키ㅣㅈ로 인정 바등려며 ㄴ
__ini__.py 라는 파일이 그 디렉토리 안에 있어야 한다.
예 : d\python <--- 퍀키지로 인정을 받으려면 ?
__init__.py <------- 비어있는 문서
calculator.py <------ 모듈
■ 8.6 _ini_.py 에 대해 (p 175)
_init_.py 는 보통 비워둡니다 . 이 파일을 손대는 경우는 __all__ 이라는 변수를 조정할 때이다.
__all__ 변수? 패키지로 부터 반입할 모듈의 목록을 정의하기 위해 사용한다
즉 어제 from 패키지 import * 라고 했는데
이 * 가 패키지 내에 모든 모듈들을 반입하겠다 라는 뜻인데
그 모든 모듈들이 뭐가 있는지 파이썬이 알려며 _ini_.py에 __all__ 변수에
아래와 같이 명시를 해줘야 한다.
예: __all__ =['plus_module','minus_module','multiply_modue','divide_module']
- 실습 :
- d:\python 폴더 아래에 4개의 모듈을 만들어서 저장한다.
-- plus_module.py로 아래의 스크립트를 저장
def plus(a,b):
return a+b
-- minus_module.py로 아래의 스크립트를 저장
def minus(a,b):
return a-b
-- multiply_module.py로 아래의 스크립트를 저장
def multiply(a,b):
return a*b
- d:\python 폴더 아래에 _ini_.py에 아래의 내용을 저장
__all__ =['plus_module','minus_module','multiply_moduㅣe']
- d:\python 폴더의 상위 디렉토리에 cal_test.py라는 이름으로 아래의 스크립트를 저장하고 실행
from python import *
print ( calculator.plus(10,5))
print ( calculator.minus(10,5))
■8.7 site - package 에 대해서
site - package 란 파있너 기본 라이브러리 패키지외에 추가적인 패키지를 설치하는 디렉토리이다.
site - package 디렉토리에 여러가지 소프트웨어가 사용할 공통 모듈을 넣어두면 ㅁ루리적안장소에 구애받지 않고 모듈에 접근하여 반입할 수 있다.
import sys
sys.path
C:\ProgramData\Anaconda30\Lib\site-packages
문제 163. d:\my_loc2라는 디렉토리를 만들고 cal_test.Py 스크립트를 가져다 두고 실행해보세요
'PYTHON' 카테고리의 다른 글
gcp를 이용해서 jupyter notebook / jupyter lab 서버 만들기 (0) | 2018.08.27 |
---|---|
9장. 객체와 클래스 (가장 중요한 단원) (0) | 2017.09.10 |
7장. 함수 (0) | 2017.09.10 |
6장. if 문과 loop문 (p126) (0) | 2017.09.10 |
1-5장 (0) | 2017.09.10 |