기본 준비사항
Python 설치 >= 3.6
Anaconda or Python Venv 설치
공식 사이트
- Django - http://www.djangoproject.com/
- Flask - http://flask.pocoo.org
- FastAPI - https://fastapi.tiangolo.com/
1. Django Setting
1.1 Django 설치 명령어
pip install Django
django-admin startproject [프로젝트명]
1-2. Django 폴더 구조
myproject/
manage.py
mysite/
__init__.py
settings.py
urls.py
asgi.py
wsgi.py
manage.py : Django 프로젝트와 상호작용 하는 커맨드 라인의 유틸리티
myproject/ : 디렉토리 아래 실제 Python 패키지들이 저장됨. 프로젝트 내부에서 (myproject.urls)와 같은 식으로 Python 패키지들 import 가능
__init__.py : 해당 디렉토리를 패키지처럼 다루라고 하는 빈 파일
settings.py : 환경 및 구성 저장
urls.py : 해당 프로젝트의 URL 선언 저장
asgi.py, wsgi.py : 현재 프로젝트를 서비스 하기 위한 WSGI/ASGI 호환 웹 서버 진입점
1-3. 서버 실행 방법
http://localhost:8000에서 확인 가능
python manage.py runserver
2. Flask Setting
2.1 Flask 설치 명령어
pip install Flask
2-2. Flask 폴더 구조
myproject/
app.py
templates/
index.html
app.py : Flask 서버 진입점
templates/ : Flask 서버에서 띄울 html 파일 폴더
2-3. 서버 실행 방법
http://localhost:5000에서 확인 가능
python app.py
3. FastAPI Setting
3.1 FastAPI 설치 명령어
fastapi와 uvicorn 설치
pip install fastapi
pip install uvicorn
3-2. FastAPI 폴더 구조
myproject/
main.py : 직접 생성
main.py : FastAPI 서버 진입점
3-3. 서버 실행 방법
http://localhost:8000에서 확인 가능
localhost:8000/docs : 자동으로 생성되는 문서 확인
uvicorn main:app --reload --host=0.0.0.0 --port=8000
'Python > Utils' 카테고리의 다른 글
[Python Utils] Python Decorator 활용 (0) | 2022.08.25 |
---|---|
[Python Utils] Python Type 어노테이션/힌트 (Typing, mypy) (0) | 2022.08.24 |
[Python Utils] 코드 컨벤션 (pylint, flake8, pre-commit, mypy) (0) | 2022.08.24 |
[Python Utils] Python 코드 정리 Tool (Black, isort) (0) | 2022.06.30 |
[Python Web] Python Web Framework 비교 (0) | 2022.04.27 |