Module and Project
Module
•
프로그램을 모듈화 시키면 다른 프로그램을 사용하기 쉬움
•
파이썬의 Module == py 파일을 의미
•
같은 폴더에 Module에 해당하는 .py 파일과 사용하는 .py 을 저장한 후
•
import 문을 사용해서 module을 호출
namespace
•
모듈을 호출할 때 범위 정하는 방법
•
모듈 안에는 함수와 클래스 등이 존재 가능
•
필요한 내용만 골라서 호출할 수 있음
•
from 과 import 키워드를 사용함
•
Alias 설정하기 - 모듈명을 별칭으로 써서 (가장 선호) → 읽기 편함
•
코드는 언제 어디서 읽는지를 명확하게 밝혀주는 것이 중요
import fah_converter as fah
print(fah.convert_c_to_f(41.6))
Python
복사
•
모듈에서 특정 함수 또는 클래스만 호출하기
from fah_converter import convert_c_to_f
print(convert_c_to_f(41.6))
Python
복사
•
모듈에서 모든 함수 또는 클래스 호출하기
from fah_converter import *
print(convert_c_to_f(41.6))
Python
복사
Built-in Modules
•
파이썬이 기본 제공하는 라이브러리
•
문자처리, 웹, 수학 등 다양한 모듈이 제공됨
•
별다른 조치없이 import 문으로 활용 가능
import random
import time
import urllib.request
Python
복사
패키지
•
모듈을 모아놓은 단위, 하나의 프로그램
•
하나의 대형 프로젝트를 만드는 코드의 묶음
•
다양한 모듈들의 합, 폴더로 연결됨
•
__ init __ , __ main __ 등 키워드 파일명이 사용됨
•
다양한 오픈 소스들이 모두 패키지로 관리됨
__ init __.py 만드는 범
touch __init__.py
Shell
복사
[참고] Package 내에서 다른 폴더의 모듈을 부를 때, 상대 참조로 호출하는 방법
from game.graphic.render import render_test()
# 절대 참조
from .render import render_test()
# . -> 현재 디렉토리 기준
from ..sound.echo import echo_test()
# .. -> 부모 디렉토리 기준
Python
복사
오픈소스 라이브러리 사용하기
•
가상환경 설정하기 (Virtual Environment)
virtualenv + pip
conda
1.
virtualenv + pip
◦
가장 대표적인 가상환경 관리 도구
◦
레퍼런스 + 패키지 개수
2.
conda
◦
상용 가상환경 도구
◦
miniconda 기본 도구
◦
설치의 용이성, windows에서 장점
•
프로젝트 진행 시 필요한 패키지만 설치하는 환경
•
기본 인터프리터 + 프로젝트 종류별 패키지 설치
•
다양한 패키지 관리 도구를 사용함
◦
virtualenv + pip
▪
레퍼런스 + 패키지 개수
◦
conda
▪
윈도우에서 장점, 설치 용이성
▪
conda 가상환경
conda create -n my project python=3.8
-n : 이름 설정
Shell
복사