hanovator.log
로그인
hanovator.log
로그인
11강 개발 환경과 패키지 관리
Han Hanju
·
2022년 5월 8일
팔로우
0
도서
파이썬실천기술
0
11.1 가상환경 - 격리된 파이썬 실행 환경
각 프로젝트마다 다른버전의 라이브러리가 필요하다. -> 가상환경으로 구분이 필요
11.1.1 venv - 가상 환경 생성 도구
두가지 프로젝트를 만든다
hobby: 장고 3.0.1
work: 장고 2.2.9
venv모듈이 만드는 가상환경이란, 실행할 파이썬 인터프리터나 설치한 패키지를 하나의 디렉터리에 모아둔것을 의미
venv의 구조
PATH를 치환하는 단순한 구조
venv/bin 디렉터리를 PATH앞에 추가.
이 디렉터리 명령어를 가장 우선적으로 사용
가상 환경 활성화 및 비활성화
가상 환경 안에서의 python 명령어
모두 가상환경의 bin/ 안에있는 파일을 사용
가상 환경 안에서의 패키지 이용
가상환경에 패키지 추가설치
장고 3.0.1설치
비활성화 후 가상과 다른 pip list확인 할 수 있음.
여러 프로젝트를 동시에 개발
work의 경우 Django 2.2.9 환경을 준비
전체 디렉터리 구조
가상환경 삭제
디렉터리 삭제
11.2 패키지 이용
패키지: 프로그램을 모아 배포 할수 있도록 한것 (라이브러리)
1. pip - 패키지 관리도구
기본사용법
pip install 명령어 사용
패키지 설치
버전 지정 않하면 최신버전 설치
의존된 패키지도 함께 설치
패키지 제거
pip uninstall
연관된 패키지는 삭제하지 않는다.
PyPI - 파이썬 패키지 저장소
pip install시 PyPI로 부터 다운된다.
전세계 사용자에게 배포도 가능.
소스 코드 저장소에 있는 패키지 설치하기
로컬에 있는 패키지 설치하기
직접 다운로드하여 pip install -e . 로 설치
Editable모드로 설치되며 코드 변경 내용을 즉시 반영함
로컬에서 설치
설치된 패키지 업데이트 하기
--upgrade 옵션
현재 사용자용으로만 설치하기
2. 환경 저장과 재현 - requirements파일 활용
requirements 파일에 현재 환경 정보 저장
requirements 파일에서 환경 재현
개발 환경에서만 이용하는 패키지 관리
requirements_dev.txt 사용
의존 패키지 업데이트
pip 명령어는 더이상 필요없는 패키지를 지워주지는 않는다.
오래된 환경 삭제 후 새로운 환경으로 다시 pip install 권장
11.3 패키지 작성
패키지 작성 후 PyPI에 배포
setup.py로 패키징 정보를 얻는다.
1. setup.py - 패키지 정보를 모아둔 파일
파이썬 프로그램 한 세트를 패키지로 모아두기 위한 스크립트로 패키징 관련 명령어도 제공
패키지 디렉터리 구성
확장성을 위해 한단어로 설정 권장
setup.py 기본
name: 패키지 이름
version: 패키지 버전
packages: 이 패키지에 포함되는 파이썬 패키지 이름의 리스트
setuptools 오타임
PyPI에 등록 고려하기
README.md, LICENSE.txt, MANIFEST.in 세개파일을 추가
의존 패키지 고려하기
install_requirments: 패키지 설치시 부족한 의존 패키지를 함께 설치
extras_requirements: 특정 기능에서만 사용한 패키지를 기술
.py 이외의 파일 고려하기
2. PyPI에 패키지 등록
다른 사람도 사용 가능하게 배포
PyPI계정 작성
배포물 작성
wheel형식이 빠르고 의존성이 적으므로 wheel형식으로 압축
몬조 sdist명령어로 tar,gz파일 생성
wheel설치 및 wheel형식으로 변환
배포물 업로드
testPyPI에 우선 업로드
이슈 확인 후 PyPI에 업로드
Han Hanju
Data Analytics Engineer
팔로우
이전 포스트
Central African Republic Adopts Bitcoin as Legal Currency
다음 포스트
Elon Musk to Buy Twitter for $44 Billion
0개의 댓글
댓글 작성