본문 바로가기

AI & Data Science

BoostCourse AI Pre-Course) Python Module and Project

728x90
반응형

<Module>

파이썬의 큰 장점 중에 하나는 대부분의 유용한 라이브러리가 이미 다른 사용자에 의해 구현되어 있다는 것이다.

 

모듈은 각 프로그램의 작은 조각으로 생각하면 쉽다.

프로그램을 모듈화 시키면 다른 프로그램에서 사용이 용이하다.

 

예를 들어 import random을 하게 되면 우리는 난수 생성을 하는 라이브러리를 호출할 수 있고 이를 통해 간단하게 난수 생성이 가능하다.

as 표현으로 별칭을 정해서 사용도 가능하다. 코드의 길이가 짧아지는 장점이 있다.

import random as rd

rd.randint(1,1000)

위 프로그램을 실행하면 1 ~ 1000 사이의 숫자를 랜덤으로 정수형으로 반환 한다.

이는 built-in 모듈인 random을 import 하고 사용한 덕분이다.

또한 모듈은 @@@. py라는 이름을 가진다.

 

모듈 함수 안에는 함수와 클래스가 존재한다. 필요한 내용만 호출할 땐 from과 import 키워드를 사용한다.

 

from collections import deque

q = deque([])

위와 같은 경우 collections라는 모듈 안에서 deque라는 이름의 함수만 호출한 것이다.

built in 모듈 같은 경우 별도의 조치 없이 import로 사용 가능하다.

 

<Package>

이는 하나의 대형 프로젝트를 만드는 코드의 묶음이다.

나누어진 코드들을 하나의 모듈로 불러와 사용 가능하게 하는 것이 패키지이다.

다양한 모듈들의 합, 폴더로 연결된다.

 

폴더 별로 __init__. py를 구성하면 현재 폴더가 패키지임을 알리는 초기화 스크립트이다.

이는 import시 경로의 총길이를 줄여주고, import시 먼저 실행되어야 할 코드를 실행해준다.

3.3+ 이후 버전부터는 해당하지 않는다.

 

<가상 환경>

프로젝트 진행 시 필요한 패키지만 설치하는 환경이 필요하다.

프로젝트의 목적과 방향에 따라 필요한 패키지가 다르기 때문이다.

대표적으로 virtualenv + pip와 conda 가 있다.

본인은 맥북을 사용하기에 virtualenv + pip 환경이 익숙하다.

 

 

728x90
반응형