now is better than never
[인공지능(AI) 기초 다지기] 2. 파이썬 다지기 (2) 본문
4. 파이썬 기초 문법 3
- Module
- 프로그램에서는 작은 프로그램 조각들 = 모듈들을 모아서 하나의 큰 프로그램을 개발함
- 프로그램을 모듈화 시키면 다른 프로그램이 사용하기 쉬움 ex) API
- 파이썬에서는 py 파일을 의미
- import문을 통해 호출
- built-in module 이 아니면 같은 디렉토리 안에 있어야 함
- Namespace
- 모듈을 호출하면 모든 코드들이 메모리에 로딩되는 것을 방지
- 모듈을 호출할 때 범위 정하는 방법
- 모듈 안에는 함수와 클래스 등이 존재 가능
- 필요한 내용만 골라서 호출 -> from, import 키워드 사용
- Alias (별칭) 설정하기 (as)
- 모듈에서 특정 함수 또는 클래스만 호출하기 (from 폴더 import py 파일)
- 모듈에서 모든 함수 또는 클래스 호출하기 (*)
- Package
- 모듈을 모아놓은 단위, 하나의 프로그램, 폴더로 연결됨
- 하나의 대형 프로젝트를 만드는 코드의 묶음
- __init__, __main__ 등 키워드 파일명이 사용됨 (각각의 폴더 모두 가지고 있음)
- 다양한 오픈 소스들이 모두 패키지로 관리됨
- 기능들을 세부적으로 나눠 폴더 생성
- 각 폴더별로 필요한 모듈 구현
- 폴더별로 __init__.py 구성
현재 폴더가 패키지임을 알리는 초기화 스크립트
없을 경우 패키지로 간주하지 않았으나 3.3 이후부터 사라짐
하위 폴더와 py 파일(모듈)을 모두 포함
import와 __all__ 키워드 사용 - __main__.py 파일 구성
패키지 호출 시 실행되는 파일
# game > __init__.py
__all__ = ["image", "sound", "stage"] # 앞으로 쓸 모듈들의 이름 = 폴더명
from . import image
from . import sound
from . import stage # 파일명 선언
- Package Namespace
- Package 내에서 다른 폴더의 모듈을 부를 때 상대 참조로 호출하는 방법
# 절대 참조
from game.graphic.render import render_test
# 상대 참조
from .render import render_test # . : 현재 디렉토리 기준
from ..sound.echo import render_test # .. : 부모 디렉토리 기준
- Virtual Environment (가상환경)
- 프로젝트 진행 시 필요한 패키지만 설치하는 환경
- 기본 인터프리터 + 프로젝트 종류별 패키지 설치
웹 프로젝트, 데이터 분석 프로젝트 등 각각 패키지를 관리할 수 있는 기능 - 다양한 패키지 관리 도구를 사용함
대표적인 도구 : virtualenv, conda
virtualenv + pip | conda |
가장 대표적인 가상환경 관리 도구 레퍼러스 + 패키지개수 |
상용 가상환경도구 miniconda 기본 도구 설치의 용이성 -> windows에서 장점 |
conda create -n my project python=3.9
- conda create : 가상환경 새로 만들기
- -n my_project : 가상환경 이름
- python=3.9 : 파이썬 버전
conda activate <가상환경명>
conda deactivate
conda install <패키지명>
'Python > [코칭스터디 9기] 인공지능 AI 기초 다지기' 카테고리의 다른 글
[인공지능(AI) 기초 다지기] 2. 파이썬 다지기 (4) (0) | 2023.01.30 |
---|---|
[인공지능(AI) 기초 다지기] 2. 파이썬 다지기 (3) (0) | 2023.01.29 |
[인공지능(AI) 기초 다지기] 2. 파이썬 다지기 (1) (0) | 2023.01.26 |
[인공지능(AI) 기초 다지기] 1. 파이썬 기초 (4) (0) | 2023.01.17 |
[인공지능(AI) 기초 다지기] 1. 파이썬 기초 (3) (0) | 2023.01.17 |