Day_2 04. Module and Project

작성일

1 분 소요

Module and Project

1. Module

  • 어떤 대상의 부분 혹은 조각
    • ex) 레고 블록, 벽돌, 등
  • 프로그램에서는 작은 프로그램 조각들, 모듈들을 모아서 하나의 큰 프로그램을 개발함
  • 프로그램을 모듈화 시키면 다른 프로그램이 사용하기 쉬움
  • 파이썬의 Module == py 파일을 의미
  • 같은 폴더에 Module에 해당하는 .py 파일과 사용하는 .py을 저장한 후
  • import 문을 사용해서 module을 호출

  • 모듈 사용 방법
import fah_converter
  • 모듈을 호출할 때 범위 정하는 방법
  • 모듈 안에는 함수와 클래스 등이 존재 가능
  • 필요한 내용만 골라서 호출 할 수 있음
  • from 과 import 키워드를 사용함
  • Alias(별명) 설정 가능
import fah_converter as fah
print(fah.convert_c_to_f(42.6))
  • 모듈에서 특정 함수 또는 클래스만 호출
from fah_converter import convert_c_to_f
print(convert_c_to_f(42.6))
  • 모듈에서 모든 함수 또는 클래스를 호출
from fah_converter import *
print(convert_c_to_f(42.6))

1.1. Built-in Module

  • Random
  • random.randint(1, 100)

1.2 time

  • time.localtime()

등등

2. 패키지

  • 모듈을 모아놓은 단위, 하나의 프로그램
  • 하나의 대형 프로젝트를 만드는 코드의 묶음
  • 다양한 모듈들의 합, 폴더로 연결됨
  • init, main 등 키워드 파일명이 사용됨
  • 다양한 오픈 소스들이 모두 패키지로 관리됨

  • Package 내에서 다른 폴더의 모듈을 부를 때
  • 상대 참조로 호출하는 방법
from game.graphic.render import render_test  # 절대 참조
from .render import render_test   # . 현재 디렉토리 기준
from ..sound.echo import echo_test  # .. 부모 디렉토리 기준
  • 터미널 명령어
    • touch : 파일을 만드는 명령어
    • mkdir : 폴더를 만드는 명령어

3. 오픈소스 라이브러리

3.1 가상환경 설정

  • 프로젝트 진행 시 필요한 패키지만 설치하는 환경
  • 기본 인터프리터 + 프로젝트 종류별 패키지 설치
  • 다양한 패키지 관리 도구를 사용함
  • 대표적인 도구 virtualenv 와 conda가 있음

  • conda 가상환경
    • conda create -n my_project python=3.8
  • conda 라이브러리 설치
    • conda install matplotlib
    • conda install tqdm

댓글남기기