08.모듈(Module)
by SANGGI JEON
Module
- 함수나 변수 또는 클래스를 모아 놓은 파일
- 모듈은 다른 파이썬 프로그램에서 불러와 사용할 수 있게 만든 파이썬 파일
def convert_to_f(celsius_value):
return celsius_value * 90 / 5 +32
# 모듈 테스트 할때는 따로 작성해서 해줘야함
if __name__ == '__main__':
print("모듈 테스트")
print(convert_to_f(45))
else:
print("임포트문 실행")
#chap04.py
from fah_converter import convert_to_f
print(convert_to_f(34))
#chap04.py
import fah_converter as fh
print(fh.convert_to_f(34))
# fah_converter.py에서 실행 결과
모듈 테스트
842.0
# chap04.py 에서 실행 결과
임포트문 실행
644.0
예제
1. random
import random
print(random.randint(0, 100))
2. time
import time
print(time.localtime())
Package
- 디렉토리 모듈 작성
- 각 디렉토리가 패키지 임을 표시하기 위해 __init _ _.py 파일이 필요
- (버전 3.3 이하 반드시 필요, 3.6 이상에서는 불필요)
- 디렉토리 별 __ init __.py 파일 작성
- 해당 디렉토리가 파이썬 패키지라고 선언하는 초기화 스크립트
- 패키지 개발자, 설치 시 유의사항 등의 메타 데이터를 포함
- 패키지의 구조를 기술
1. 예제
- 예제) 인터넷에서 주식 정보를 가져와 데이터베이스에 저장, 필요한 정보를 계산
- 디렉토리 구성
- 패키지 명: roboadvisor
- roboadvisor 기능
- crawling: 주식 관련 데이터를 인터넷에서 가져옴
- database: 가져온 데이터를 데이터베이스에 저장
- analysis: 해당 정보를 분석, 의미있는 가치 추출
- my_package
- roboadvisor
- analysis
- crawling
- database
- roboadvisor
# roboadvisior/__init__.py
from . import analysis
from . import crawling
from . import database
__all__ = ['analysis', 'crawling', 'database']
# roboadvisior/analysis/__init__.py
from . import series
from . import statics
__all__ = ['series', 'statics']
# roboadvisior/crawling/__init__.py
from . import parser
from . import scrap
__all__ = ['parser', 'scrap']
# roboadvisior/crawling/__init__.py
from . import connection
from . import query
__all__ = ['connection', 'query']
2. pycharm에서 패키지의 위치 설정하기
- 기본적으로 패키지를 설치하면 아래에 설치됨
- import 하면 아래 주소에서 찾음
- C:\Users\BIT\AppData\Local\Programs\Python\Python37\Lib\site
-
생성한 패키지를 추가 해줘야 함
Pycharm Import 빨간줄 오류
- 프로젝트 우클릭 - Mark Directory as - Sources Root 클릭
Subscribe via RSS