1일차 퀴즈
파이썬 코루틴.
ayncio
pipenv
poetry
파이썬 코루틴
서브루틴 , 코루틴
루틴은 일반적으로 하나의 스레드에서의 실행흐름
서브루틴 '종속적인 루틴'을 의미
코루틴 코는 같이 라는 의미를 의미 협력적으로 실행되는 루틴을 의미
비동기 처리 비동기 프로그래밍 <<<< 코루틴
동기 처리: 순차 처리 방식
비동기 처리: 여러 작업 동시 처리
코루틴
실행중인 함수를 잠시 중단하고 나중에 실행을 재생하는 기능
yield: 이걸 만나면 함수를 중단해라( 값을 반환)
next: 다음 yield를 만날 때까지 코루틴 재개
send: 코루틴에 값 전달하기 :다시 실행, yeild의 반환값이 send의 인자가 ㅗ딤
비동기 프로그래밍을 위한 라이브러리 코루틴 이용: asyncio
async
await 다른 코루틴의 실행의 완료를 기다림
임포트 랜덤을 했는데 파일이름이 랜덤.py 이거 안됨 ..
패키지 관리 기법
Module vs Package vs Library
pip env
poetry 의존성 관리를 위한 도구
requirements.txt 의존성관리를 위한 도구 근데 이게 단점이 있어서 위에 두개를 쓴다.
모듈은 파이썬으로 정의된 파일 실행가능한 파이썬 파일
모듈이 모여서 패키지, 패키지가 모여서 라이브러리
패키지는 모듈의 집합 .모듈이름 /이름공간/ ex .views
라이브러리는 미리 준비된 모듈 패키지
random.randint
파이썬 표준 라이브러리 문자열 내장함수, 등등
파이썬 패키지 인덱스 PyPI
pip 파이썬 패키지 관리자 매니지먼트 시스템
pip install Package
pip search Package
pip freeze 패키지와 버전들의 목록들을 확인하고
외부라이브러리 관리 == 의존성 관리
어떤 버전 / 어떤 패키지가 쓰였는가
어떤 버전 / 어떤 패키지가 쓰일 수 있나
pip freeze > requirements.txt
가상환경,
pip install -r requirements.txt
문제의식
배포용 패키지 < 개발용 패키지 = 실수 발생
패키지 trackind이 어려움
패키지의 의존성 관리가 어려움
pip uninstall 을 하면 하나만 없어짐 딸려오는 애들 남아있음..;;
파이썬은 가상환경이 많다.
virtual enviroment
conda enviroment 통일되지 않은 패키지관리자와 가상환경이 야기할 수 있는 문제
이런 문제들을 해결할 수 있는것
pipenv : basic usage
pipenv install django
Pipfile.lock 개발용과 배포용을 관리
똑같은 패키지가 설치되도록 보장 스냅샷 생성
pipenv install --dev 개발용
pipenv graph 의존성 패키지들을 보여줌
기존 문제의 해결
poetry install
poetry.lock
모든 팀원들이 똑같은 가상환경이 생성
poetry shell
poetry add django
poetry search
poetry show 설명
poetry show --tree 트리
'코딩 > Django' 카테고리의 다른 글
토큰 세션 특강 (0) | 2023.04.21 |
---|---|
장고 (0) | 2023.04.20 |
장고 레스트 프레임워크 (0) | 2023.04.19 |
장고 프레임워크에 대한 고찰 (1) | 2023.04.17 |
Django 모델 설계 (0) | 2023.04.12 |