인공지능 개발자 수다(유튜브 바로가기) 자세히보기
반응형

python 28

Pyenv로 Python 설치하고 가상환경 만들기

1. Pyenv 설치1.1. 윈도우 (Window)Git에서 Pyenv를 설치하는 명령어를 받을 수 있다. (링크)Power shell 에서 명령어를 입력한다.Invoke-WebRequest -UseBasicParsing -Uri "https://raw.githubusercontent.com/pyenv-win/pyenv-win/master/pyenv-win/install-pyenv-win.ps1" -OutFile "./install-pyenv-win.ps1"; &"./install-pyenv-win.ps1"  1.2. Mac os pyenv 설치 명령어brew install pyenv 2. pyenv 버전 관리pyenv 버전확인pyenv --versionpyenv 업데이트 (Mac OS)brew upgr..

[FastAPI] Sqlalchemy와 CRUD (6)

1. SQLAlchemy1.1.SQLAlchemy란?SQLAlchemy는 Python의 ORM(객체 관계 매핑) 라이브러리로, 데이터베이스와 Python 객체 간의 변환을 쉽게 할 수 있게 도와줍니다. ORM(객체 관계 매핑, Object-Relational Mapping)은 프로그래밍 언어의 객체지향적 패러다임과 관계형 데이터베이스의 테이블 간의 데이터를 변환하는 기술입니다. 쉽게 말해, ORM은 데이터베이스의 테이블과 프로그래밍 언어에서 사용하는 객체를 매핑하여 데이터베이스 작업을 코드 내에서 객체를 다루는 것처럼 편리하게 수행할 수 있도록 해줍니다. 1.2. 데이터베이스별 비교이번 글에서는 Postgresql을 기준으로 글을 작성하겠습니다. SQLAlchemy를 사용할 때, 사용하는 데이터베이스가 ..

Fastapi 2024.12.31

[FastAPI] Uvicorn 과 Gunicorn 사용하기

1. 설명1.1. GunicornWSGI(Web Server Gateway Interface) 서버 HTTP 요청(클라이언트의 요청)을 애플리케이션(FastAPI)에 전달하고, 애플리케이션의 응답을 클라이언트로 다시 전송하는 역할을 합니다.동기 프레임워크를 실행할 때 주로 사용. 비동기 I/O를 지원하지 않기 때문에, FastAPI와 같은 ASGI 프레임워크를 직접 실행할 수는 없다FastAPI와 같이 비동기 지원이 필요한 경우 Uvicorn을 Gunicorn의 워커로 사용하는 방식으로 함께 사용하여, 다중 프로세스의 이점을 살리면서 비동기 처리 성능을 향상시킵니다.1.2. UvicornASGI(Asynchronous Server Gateway Interface) 서버비동기 프레임워크에 최적화FastAP..

Fastapi 2024.11.14

[FastAPI] Pydantic 사용법 (5)

1. Pydantic1.1. Pydantic 이란?Pydantic은 파이썬 데이터 클래스와 유사한 구조로 데이터 모델을 정의하고, 이를 통해 데이터 검증과 변환을 수행하는 라이브러리입니다. 특히, 데이터의 유효성을 보장하고 자동으로 타입을 변환해주는 기능을 제공함으로써, 신뢰성 있는 애플리케이션 개발에 도움을 줍니다. Pydantic 사용의 장점• 코드의 간결성: 데이터 검증, 변환 로직을 수동으로 작성할 필요 없이, Pydantic 모델을 정의함으로써 자동으로 처리할 수 있어 코드가 간결해집니다. • 안정성: FastAPI와 같은 웹 프레임워크에서는 외부에서 들어오는 데이터가 많기 때문에, 신뢰할 수 있는 데이터 검증이 필수적입니다. Pydantic은 이러한 역할을 수행함으로써 애플리케이션의 안정성을 ..

Fastapi 2024.08.31

[FastAPI] HTML 사용해 보기 (3)

1. 개요먼저 FastAPI에서 HTML을 사용한다는 것은,HTML에서 보여주는 내용을 동적으로 보여준다는 것이다.즉, FastAPI에서 Return한 변수를HTML에서 보여주겠다는 것이다.2. 설치먼저 jinja2를 설치해 주자# pip 설치 방법pip install jinja2# poetry 설치 방법poetry add jinja2  3. 기본적인 HTML 다루는 방법만약 프론트엔드 서버와 FastAPI가 통신한다면, 클라이언(유저)가 프론트엔드에 Request를 날리면 프론트엔드 서버에서 Json 등의 데이터를 FastAPI에 요청하는 형식으로 진행되겠지만, HTML만 이용할 때에는 클라이언트가 FastAPI에게 request를 요청하면 HTML을 반환하는 형식으로 코드를 작성하게 된다.'FastA..

Fastapi 2024.08.22

[FastAPI] 개념과 기본 사용법 (1)

1. 설치pip 설치pip install fastapi uvicorn poetry 설치poetry add fastapi unicorn 2. 주요 구성요소2.1. 애플리케이션 인스턴스가장 핵심이 되는 FastAPI 인스턴스 이다.인스턴스는 모든 라우팅, 미들웨어, 이벤트 핸들러 등을 관리한다.from fastapi import FastAPIapp = FastAPI() 애플리케이션 실행if __name__ == '__main__': import uvicorn uvicorn.run(app, host='localhost', port=8000)2.2. 라우팅 및 경로 작업@app.get(), @app.post() 를 사용한다.경로를 지정해주고, 요청을 처리할 함수를 만들어 준다.@app.get("/")..

Fastapi 2024.07.10

[빅데이터분석기사 실기] 암기 모음집 - 유형 3

1. 시험 설명유형 3문제 수: 2문제 (각 15점, 30점)주제: 통계적 가설 검정2. 이론 암기2.1. 기본 이론가설 설정귀무가설: \(H_0\): 검정통계량이 기각역에 속하면, 귀무가설을 기각하고 대립가설을 채택한다.대립가설: \( H_1 \)p-value가 낮으면 -> 통계량은 아주 극단적인 수치이다 -> 귀무가설 기각유의수준: \( \alpha \)1%, 0.01, 양측검정 5%, 0.05, 양측검정(1.96), 단측검정(1.64)10%, 0.1오류 종류1종 오류(Type 1 Error): 귀무가설이 참일 때, 귀무가설을 기각하는 경우2종 오류(Type 1 Error): 귀무가설이 거짓일때, 귀무가설을 채택하는 경우2.2. 검증 종류2.2.1. '단일 표본의 평균' 검정One sample Z-T..

카테고리 없음 2024.06.08

[알고리즘] 정렬 (버블, 선택, 삽입, 병합, 퀵)

1. 버블정렬 (Bubble Sort)인접한 두 요소를 비교하여 필요에 따라 위치를 바꾸면서 리스트를 정렬하는 방법입니다. 버블 정렬은 여러 번의 패스를 통해 리스트를 정렬하며, 각 패스에서 가장 큰 요소가 리스트의 끝으로 이동합니다. 이 과정은 마치 "거품이 위로 올라가는" 모습과 비슷해서 버블 정렬이라고 불립니다. 최악의 경우 시간 복잡도: O(n^2) (리스트가 역순으로 정렬된 경우) 최선의 경우 시간 복잡도: O(n) (리스트가 이미 정렬된 경우, 이 경우는 최적화된 버블 정렬에서만 적용됩니다) 평균 시간 복잡도: O(n^2)1.1. 버블 정렬의 작동 원리리스트의 첫 번째 요소부터 시작하여 인접한 두 요소를 비교합니다.두 요소가 올바른 순서(오름차순 정렬의 경우 작은 값이 앞에, 큰 값이 뒤에)라..

[자료구조] 트리

1. 트리의 기본 개념노드(Node): 트리의 기본 구성 요소로, 데이터를 포함.루트(Root): 트리의 최상위 노드.간선(Edge): 두 노드를 연결하는 선.부모 노드(Parent Node): 다른 노드를 가리키는 노드.자식 노드(Child Node): 부모 노드에 의해 가리켜지는 노드.리프 노드(Leaf Node): 자식 노드가 없는 노드.서브트리(Subtree): 트리의 일부로, 특정 노드를 루트로 하는 트리.깊이(Depth): 루트 노드에서 특정 노드까지의 경로 길이.높이(Height): 특정 노드에서 리프 노드까지의 가장 긴 경로.2. 트리의 종류모든 트리의 종류를 다 공부하기에는 양이 많으니, 중요한 트리만 보고 넘어가기로 하자.이진 탐색 트리(Binary Search Tree): 기본적인 트..

[자료구조] 스택(Stack) 큐(Queue) 해시테이블(Hash Table)

파이썬에서는 이미 구현되어있다.클래스와 함수명을 외우기만 하면 된다!!!!1. 스택 (Stack)파이썬에서 스택은 리스트를 사용하여 쉽게 구현할 수 있습니다. 스택은 LIFO (Last In, First Out)의 원칙을 따르는 선형 자료구조입니다. 즉, 가장 나중에 추가된 요소가 가장 먼저 제거됩니다. 스택의 주요 연산은 다음과 같습니다.push: 스택의 맨 위에 요소를 추가합니다. - append()pop: 스택의 맨 위 요소를 제거하고 그 값을 반환합니다. - pop()peek/top: 스택의 맨 위 요소를 조회합니다. - ls[-1]isEmpty: 스택이 비어 있는지 확인합니다. - not ls # 비어있으면 Truestack = []stack.append(1) # 스택에 1을 pus..

반응형