본문 바로가기
기본소양/컴퓨터공학 Basic

[ 코딩, 처음입니다 ] Library, Package, Module

by EXUPERY 2021. 1. 2.
반응형

 

Library, Package, Module 

 


 

 

당신은 차를 고치는 사람입니다. 오늘은 '아침'이라는 자동차가 입고되었네요. 타이어에 구멍이나서 갈아야한다고 합니다!

 

 

Module

자동차 타이어에 바람이 빠지면, 타이어만 바꾸면 됩니다. 자동차를 통째로 일일히 볼 필요는 없죠. 코드도 마찬가지입니다. 매우 복잡한 코드를 하나에 담아놓으면 가독성도 떨어질 뿐만 아니라 유지보수하기에도 힘이 들겠죠. 그래서 특정부분을 빼서 관리를 할 수 있도록 module이라는 것을 만듭니다. 함수나 클래스, 전역변수 같은 것을 따로 빼놓는 것입니다. 우리는 ****.py로 끝나는 파일로 분리를 해서 필요할 때 불러와서 사용하면 됩니다.

우리는 타이어를 교체하는 법을 이용해서 타이어를 갈았습니다.

# tire.py
def tire(seq) :
	print(seq + '번째 타이어를 고쳤습니다.')
import morning
morning.tire(4)

#output
4번째 타이어를 고쳤습니다.

 

 

 

Package

고객이 깜빡이도 잘 안들어온다고하네요. 엔진도 이상하고, 속도계와 RPM계기도 잘 안된다고해요. 이번엔 '아침'의 정비 매뉴얼을 통째로 가져와서 고치겠습니다. 패키지는 이 모듈의 집합입니다. 이 패키지에는 타이어라는 모듈, 엔진이라는 모듈, 계기판이라는 모듈등을 모아놓았습니다. 

사실 단순히 ****.py를 모아놓은거죠. 컴퓨터는 이게 어떻게 패키지라는 것을 알 수 있을 까요? 그래서 패키지로 있기위해선 __init__.py 파일이 있어야합니다. interpreter가 패키지라는 것을 알 수 있도록!

이제 이 차는 어떤 것이 고장나도 고칠 수 있습니다.

morning(Package) 
| __init__.py (Constructor) 
| tire.py (Module) 
| rpm.py (Module) 
| engine.py (Module)
| speedinstrument.py (Module)
| light.py (Module)

 

 

 

Library

다른 고객 두 분이 오셨습니다. '점심'과 '저녁'이라는 차네요. 이제 '아침'뿐만아니라 '점심'과 '저녁'이라는 차도 고쳐야합니다. 아마 당신은 두 차의 매뉴얼이 필요할거에요. 그래서 정비매뉴얼들이 모여있는 '자동차도서관'을 갈 것입니다.

라이브러리는 패키지의 집합입니다. 다시말해 문자그대로 도서관입니다 ! 자동차에 관련한 정보를 얻고싶으면 자동차 도서관에 가면되고, 비행기에 관한 정보를 얻고싶으면 비행기도서관에 가면됩니다.

우리는 Dataframe을 다루기 위해서 pandas library를 가져오고 시각화하기 위해서 matplot library와 seaborn library를 불러옵니다. 라이브러리를 쓰기 위해서는 .을 붙이면 됩니다.

import pandas as pd

df = pd.read_csv("file_name.csv")

 

반응형

댓글