오늘 공부한 내용은 모듈과 프로젝트!
다른 파이썬 스크립트에서 재사용할 수 있도록 구조화된 코드를 담고있는 파일
프로그램을 모듈화하면 다른 프로그램에서 사용하기 쉽다.
파이썬에서 모듈은 py파일을 의미한다.
파이썬에서는 import 모듈명
을 통해 모듈에서 정의한 것들을 재활용할 수 있다.
import random
p = random.randint(1,1000)
print(p) # 1~1000사이의 랜덤 int 출력
Alias(별칭)
import numpy as np
처럼 as 별칭 으로 지정할 수 있다.
from 모듈명 import 함수(or class)
로 모듈에서 특정함수나 클래스만 호출할 수 있다.
Built-in Modules
파이썬의 기본 라이브러리. 별 조치 없이 import 문으로 바로 활용이 가능하다.
import random
import time
import urllib.request
import json
p = random.randint(1,1000)
print(p)
print(time.localtime()) # 현재시간 출력
url = "https://example.com"
# GET 요청 보내기
response = urllib.request.urlopen(url)
# 응답 받기
data = response.read()
# JSON 형식으로 파싱
user_data = json.loads(data)
print(user_data)
모듈을 모아놓은 단위. 하나의 프로그램. 여러 모듈을 포함하는 디렉터리(폴더)로 구성됨
__init__ , __main__ 등의 키워드 파일명이 사용된다.
기능들을 세부적으로 나눠 폴더로 만들고 각 폴더별로 필요한 모듈을 구현한다.
폴더별로 __init__.py
를 구성해야 현재 폴더가 패키지로 간주된다.
(3.3버전부터는 없어도 되지만 하위버전과의 호환을 위해 만든다)
__main__.py
파일은 해당 패키지를 패키지명으로 실행할 때 메인모듈로 사용된다.
패키지 내에서 다른 폴더의 모듈을 부를 때 .
하나만 쓰면 현재 디렉토리 기준이고, ..
두개를 쓰면 부모 디렉토리 기준이다.
from .render import render_test()
from ..sound.echo import echo_test()
프로젝트 진행 시 오픈소스 라이브러리를 활용하기 위해 패키지 관리 도구를 이용해 다양한 패키지를 사용한다.
대표적으로 virtualenv와 conda가 있다. 윈도우에서는 conda를 주로 쓴다.
conda 명령어
# 새로 가상환경 만들기(가상환경 이름과 파이썬 버전)
conda create -n my_project python=3.8
# 가상환경 호출
conda activate my_project
# 가상환경 해제
conda deactivate
# 패키지 설치
conda install 패키지명