코딩 프로그래밍/PYTHON 파이썬27 sqlalchemy 테이블 컬럼 목록 파이썬에서 데이터베이스 활용할 때 sqlalchemy 사용해서 데이터를 가져올 수 있는데요. sqlalchemy 를 통해 테이블이나 컬럼 목록을 가져올 수 있어요. 물론 all_tables 나 information_schema.tables 같은 테이블을 조회할 수도 있지만 DB 상관없이 동작하도록 하려면 쿼리보다는 sqlalchemy 에서 제공하는 기능을 이용하면 DB 상관하지 않고 사용할 수 있는 코드를 만들 수 있어요. from sqlalchemy import create_engine from sqlalchemy import inspect from sqlalchemy.pool import NullPool url = "postgresql://아이디:비번@서버:포트/디비" engine = create_e.. 2023. 3. 30. FastAPI 데이터베이스 연동 sqlalchemy FastAPI 같은 백엔드 작업하면 데이터베이스 연동은 거의 필수적이라고 할 수 있는데요. RDB 접속하는 경우에는 sqlalchemy 많이 이용하고 있어요. 처음부터 파일을 여러 개 만들어서 나누는 경우 조금 헷갈릴 수 있어요. 돌아가는 과정을 파악하기 위해서 단순화해서 만들어보는 것이 좋습니다. mysql을 가지고 테스트 합니다. DB 접근에 필요한 sqlalchemy를 설치합니다. pip install sqlalchemy DB를 mysql을 사용할 것이라서 필요한 pymysql을 설치합니다. pip install pymysql main.py 파일 하나만 가지고 테이블을 만들고 입력하고 조회하는 부분을 만들었습니다. 최대한 간단하게 하려고 했는데 만들다 보니 길어졌네요. 주석을 넣어두기는 했어요. f.. 2023. 3. 29. vscode 파일 목록에서 __pycache__ 안보이게 하기 vscode 사용하다가 특정 패턴을 가진 파일 목록이 안 보이게 하고 싶은 경우가 있어요. 개발할 때 자동으로 생기거나 설치되어 있지만 수정할 일은 없는 폴더와 파일 같은 것들이요. 보이면 성가시기도 할 때가 있어요. 그럴 때 그냥 안 보이게 설정할 수 있어요. 이 설정을 알고 있으면 반대로 분명 있는데 보이지 않는 파일이나 디렉터리가 있다면 이 설정이 되어 있는 것은 아닌지 확인해 보세요. vscode에서 단축키 ctrl + , 를 누르면 설정하는 화면이 나와요. 거기서 files.exclude를 검색해 보면 설장 할 수 있는 부분이 나와요. .git이나 Thumbs.db 등이 추가되어 있는데요. 원하는 것을 추가하거나 제거할 수 있습니다. 저는 **/__pycache__ 라고 추가해서 보이지 않게 했.. 2023. 3. 29. FastAPI 설정 관리, main.py 폴더 구조 main.py 파일 하나로 만들기에는 코드 양이 많이 질 수 있어서 분리하는 것이 좋습니다. 물론 간단하게 데모 사이트 하나 만드는 경우에는 main.py 파일 하나로 해도 문제없겠지만 환경이 다양해지고 연동하는 것들이 많이 지면 분리하고 싶어 져요. 환경을 관리하기 위해서 config파일을 만들겠습니다. app 폴더 core 폴더 common 폴더를 순서대로 만들고 거기에 config.py 파일을 만들어서 설정과 관련된 내용을 넣겠습니다. 각 폴더에는 touch 명령어로 __init__.py 파일을 만들어주세요. app/core/common/config.py from dataclasses import dataclass from os import path, environ from typing import.. 2023. 3. 28. FastAPI 시작하기 FastAPI로 빠르게 API 서버 만들어봐요. 장고도 있고 Flask도 있지만 API를 빠르게 만들 어 볼 수 있어서 정말 좋아요. 예전에는 버전이 낮아서 조금 불안한 느낌이 있었는데 아직 1.0은 넘지 못했지만 그래도 곧 1.0이 멀지 않았어요. 글 쓰고 있는 현재 0.95입니다. 파이썬 버전 3.11로 해보고 있어요. 프로젝트 시작 가장 먼저 폴더를 만들고 시작 할게요. mkdir apiserver 가상 환경을 만들고 활성화하겠습니다. virtualenv venv source venv/bin/activate FastAPI 설치 FastAPI에 필요한 패키지를 설치합니다. pip install fastapi pip install "uvicorn[standard]" main.py 생성 main.py 파.. 2023. 3. 28. pyenv 꼭 사용하세요 pyenv 꼭 사용하세요. 여러 가지 파이썬 버전을 사용하고 싶을 때 꼭 필요합니다. node에서는 nvm과 같은 것이라고 볼 수 있습니다. virtualenv는 가상 환경을 관리하는 것이고 그것 보더 높은 개념이라고 볼 수 있습니다. 우분투에서 설치하는 과정을 설명하겠습니다. 윈도우에서 설치하는 방법 참조 https://tolovefeels.tistory.com/entry/pyenv-windows 1. 준비 - 필요한 패키지 설치 pyenv 사용할 때 우분투에서 필요한 패키지를 설치합니다. 우분투 버전에 따라서 다를 수 있는데 python3-openssl가 없다는 오류가 나온다면 python-openssl로 변경해서 설치 시도해 보세요. sudo apt install -y make build-essen.. 2023. 3. 28. pyenv 윈도우에서 셋팅하기 pyenv 하나만 있으면 파이썬 여러 가지 버전을 설치하고 관리할 수 있어요. 편리해요. 윈도우에서 설치하는 방법 남겨놓겠습니다. pyenv 공식 홈페이지에도 잘 설명되어 있어요. 평하게 powershell에서 복사 붙여 넣기 하면 잘 설치되도록 할게요. 기존 파이썬이 설치되어 있다면 삭제하고 따라 해야 합니다. 파이썬 설치 프로그램으로 설치한 파이썬이 우성 실행됩니다. 프로그램 추가제거에서 파이썬을 삭제하고 시작하세요. PATH 관련 설정도 삭제하고 나서 해야 합니다. 삭제하는 것에 대한 위험성을 인지하고 하세요. 특별한 언급이 없다면 관리자모드가 아니라 일반 powershell 환경에서 실행하세요. pyenv 다운로드 받기 파워쉘 명령어로 다운로드하겠습니다. 파워쉘을 켜고 아래 명령어를 순차적으로 실.. 2023. 3. 28. 인공지능 그림 그리기 무료 stable diffusion 점점 시대가 발전하면서 인공지능으로 그림도 그리고 영상도 만들 수 있는 시대입니다. DALLE2 엔진을 이용하는 openai는 요금이 발생하고 사용하려면 조금 진입장벽이 있었는데요. 지금도 진입장벽이 아주 허물어진 것은 아니지만 많이 낮아졌어요. 구글 계정만 있다면 무료로 클라우드에 있는 개발환경을 이용해서 인공지능을 이용해 그림을 그려 볼 수 있어요. GDU가 좋은 그래픽카드가 있다면 직접 환경을 구성해서 할 수도 있습니다. 인공지능 준비하기 stable diffusion이라는 오픈소스가 있어요. 누구나 소스를 가져가서 직접 인공지능을 만들어 볼 수 있습니다. 많은 사진으로 인공지능을 학습시켜야 하는데 이미 많은 자금을 투입하여 바로 사용하기만 하면 되는 인공지능 소스를 공개했어요. 대신 그 사진에는 .. 2022. 10. 9. 이전 1 2 3 4 다음 반응형