<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 환경이 익숙하다.
'AI & Data Science' 카테고리의 다른 글
BoostCourse AI Pre-Course) 기초 수학(numpy,벡터,행렬) (0) | 2022.07.26 |
---|---|
BoostCourse AI Pre-Course) Python Data Handling (0) | 2022.07.25 |
인공지능 시험 정리 (0) | 2022.06.11 |
파이썬 딥러닝 머신러닝 입문 - 분류 (0) | 2022.01.21 |
파이썬 딥러닝 머신러닝 입문 - pandas (0) | 2022.01.21 |