욤미의 개발일지

[DAY 3] Python: Lecture 8. Module & Package 본문

NLP/STUDY

[DAY 3] Python: Lecture 8. Module & Package

욤미 2022. 10. 18. 22:37
728x90
반응형

[Lecture 8] Module & Package

  • 모듈과 패키지로 작성한 코드를 재사용할 수 있다.
  • 파이썬에서 모듈 = .py 파일
  • import module 모듈을 불러올 수 있다.
    • 해당 파일의 최상위에 선언된 모듈의 요소들을 불러올 수 있다.
    • module.element로 사용가능
  • . 혹은 .. 없이는 절대 경로 기준이다.(python이 실행되는 곳)
  • import문은 import된 .py 파일을 처음부터 끝까지 실행시킨다.
  • 모듈로 import 했을 때 특정 Block만 실행시키고 싶다면?
    • __name__ 기본 변수는 현재 모듈의 이름을 보여줌.
    • main으로 실행중이면 __main__이라는 특수한 이름을 가짐
def add(num1: int, num2: int) -> int:
    return num1 + num2

if __name__ == "__main__":
    print("이 코드는 functions 모듈이 main일 때만 실행")

Import Examples

import directory.functions # directory 폴더 내에 functions.py 파일
directory.functions .add(1, 2)

import directory.functions as func # as로 별칭 사용
func.add(1, 2)

from directory import functions # 특정 디렉토리에서 파일 import
functions.add(1, 2)

from directory.functions import add # 특정 함수만 import
add(1, 2)

from directory.functions import * # * 로 모두 import 권장하지는 X
add(1, 3)
  • 최상위에선 상대 경로가 작동되지 않음
  • 부모 폴더 접근을 위해서는 모듈 형태로 실행 필요
  • init.py 파일을 작성해서 폴더를 import 가능

파이썬은 강력하고 다양한 표준 라이브러리를 가지고 있음

  • 파이썬 표준 라이브러리로 해결이 안되면 오픈소스, 전용 라이브러리 등을 사용할 수 있다.
  • 하지만 하나의 파이썬 위에 여러 버전과 환경을 설정할 수 X

→ 패키지 관리 필요!

 

Python Package Manager

  • pip + virtual env
  • anaconda3

 

Creating Virtual Environment

conda create -n <가상환경이름> # 가상환경 만들기
conda activate <가상환경이름> # 가상환경 활성화
conda deactivate # 가상환경 비활성화
conda install <패키지명> -c <설치 채널> # 패키지 설치
conda list # 현재 가상 환경에 설치된 패키지 확인
conda list | grep numpy # 리눅스 grep 명령어랑 결합하면 편리
728x90
반응형
Comments