[python] 모듈 본문

Python

[python] 모듈

미니모아 2020. 3. 23. 23:29
반응형

모듈

  • 미리 만들어진 코드를 가져와 쓰는 방법
  • import 모듈이름
  • 사용 방법: 모듈이름.모듈안의 구성요소

    math.pi random.choice()

모듈의 예

  • import math

    • 수학과 관련된 기능
  • import random

    • 무작위와 관련된 기능
  • import urllib.request

    • 인터넷의 내용을 가져오는 기능
    • 크롤링할 때 쓰면 되겠다 
def get_web(url):
   import urllib.request
   response = urllib.request.urlopen(url)
   data = response.read()
   decoded = data.decode('utf-8')
   return decoded

url  = input('url?')
content = get_web(url)
print(content)

 

 

모듈 만들기

  1. 사용할 함수, 메소드 코드를 작성한 모듈 파일을 생성
  2. 모듈이 쓰일 파일에 import를 사용하여 모듈을 호출
  3. 사용 방법은 기존의 모듈과 동일
  4. 주의할 점은 사용자가 만든 모듈과 모듈을 쓸 파일이 같은 폴더에 있어야 한다.
  • 만든 모듈 사용하기 
import my_module
my_module.method()

 

  • 함수만 따로 가져오고 싶을 때
from my_module import *
#혹은 
from my_module import method
  • if __name__ == "__main__": 이 파일이 직접 실행되었을 경우에만 참.
    • 파이썬의 __name__ 변수는 파이썬이 내부적으로 사용하는 특별한 변수 이름이다. 만약 직접 파일을 실행할 경우 __name__ 변수에는 __main__ 값이 저장된다. 하지만 파이썬 셸이나 다른 파이썬 모듈에서 import 할 경우에 __name__ 변수에는 실행한 모듈 이름이 저장된다.

 

[모듈을 불러오는 또 다른 방법]

모듈이 다른 디렉토리에 있을 때 

 

1. sys.path.append(모듈을 저장한 디렉터리) 사용하기

먼저 sys 모듈을 불러온다.

import sys

sys 모듈은 파이썬을 설치할 때 함께 설치되는 라이브러리 모듈이다. 이 sys 모듈을 사용하면 파이썬 라이브러리가 설치되어 있는 디렉터리를 확인할 수 있다. 

>>> sys.path  

sys.path는 파이썬 라이브러리가 설치되어 있는 디렉터리를 보여 준다. 만약 파이썬 모듈이 위 디렉터리에 들어 있다면 모듈이 저장된 디렉터리로 이동할 필요 없이 바로 불러서 사용할 수 있다.  

 

>>> sys.path.append("만든 모듈이 있는 PATH")

 

sys.path.append를 사용해서 C:/doit/mymod라는 디렉터리를 sys.path에 추가한 후 다시 sys.path를 보면 가장 마지막 요소에 추가된 것을 확인할 수 있다.

 

 

2. PYTHONPATH 환경 변수 사용하기

모듈을 불러와서 사용하는 또 다른 방법으로는 PYTHONPATH 환경 변수를 사용하는 방법이 있다.

 

set PYTHONPATH=만든 모듈이 있는 PATH

 

set 명령어를 사용해 PYTHONPATH 환경 변수에 mod2.py 파일이 있는 디렉터리를 설정한다. 그러면 디렉터리 이동이나 별도의 모듈 추가 작업 없이 만든 모듈을 불러와서 사용할 수 있다.

반응형
Comments