베하~ 안녕하세요! BTC_현상수배범 입니다.
이번에는 데이터 과학자를 위한 빠른 웹 앱 개발 도구인 Streamlit에 대해 살펴보고자 합니다.
Streamlit은 데이터 과학자들이 복잡한 웹 앱을 쉽게 만들 수 있도록 도와주는 오픈 소스 라이브러리 입니다.
파이썬만 알고 있으면 누구나 사용 가능하며, 복잡한 웹 프로그래밍 지식이 필요하지 않습니다.
이 글에서는 Streamlit이 무엇이고, 어떻게 사용하는 것인지 알아보도록 하겠습니다.
Streamlit이란?
기존의 정석적인 웹 앱 개발은 복잡하고, 많은 시간이 소요됩니다. HTML, CSS, JavaScript 같은 여러 언어와 프레임워크를 알아야하고, 데이터와 시각화의 연동도 어려울 수 있습니다.
Streamlit은 이러한 복잡함을 제거하고, 데이터 과학 및 기계 학습을 위한 강력한 맞춤형 웹 앱을 구축하는데에 사용되는 오픈 소스 Python 라이브러리입니다. 몇 줄의 파이썬 코드로 빠르고 편리하게 웹 앱을 만들 수 있도록 합니다.
주요 특징
장점
- 간단한 문법: 파이썬 코드 몇 줄로 강력한 기능을 가진 웹 앱을 만들 수 있습니다.
- 빠른 개발: 변경 사항을 웹에 즉시 반영하므로 개발 시간을 단축할 수 있습니다.
- 프론트 엔드, 백엔드 기술 스택에 대해 생각하는 대신, 중요한 것에 집중할 수 있도록 합니다.
- Latex, OpenCV, Vega-Lite, seaborn, PyTorch, NumPy 등 여러 주요 라이브러리 및 프레임워크와 호환됩니다.
- Dash, Gradio에 비해 더욱 간단하고 빠르게 웹 앱을 개발할 수 있습니다.
단점
- Streamlit은 자체 구문을 배우는데 약간의 시간이 필요합니다.
- Python 만을 기반으로 하며, 위젯들이 제한되어 있습니다. (Python 노트북과 호환되지 않음)
- 비디오/애니메이션에 대한 지원이 제한적입니다.
설치 방법
Streamlit 설치는 아주 간단합니다. 터미널 또는 명령 프롬프트에서 아래 명령을 실행하면 됩니다.
pip install streamlit
예제: 간단한 Streamlit 앱 만들기
저는 윈도우 환경에 VS Code를 설치하고, WSL(Ubuntu 22.04 LTS)에 원격 서버를 설치해서 실행하고 있습니다.
파이썬과 streamlit의 버전은 아래 이미지와 같습니다.
1. 홈 디렉터리에 webapp.py 파일을 만들고, 아래 코드를 작성합니다.
import streamlit as st
st.title("Streamlit App")
st.write("Hello World!")
2. 작성된 코드를 실행하기 위해서는 CLI에 아래 명령어를 작성하시면 됩니다.
streamlit run ~/webapp.py
VS Code에서는 Local URL 또는 Network URL을 Ctrl + Click 하시면 인터넷 창에서 애플리케이션이 실행된 것을 확인할 수 있습니다. URL을 복사하셔서 붙여넣기 해도 무방합니다.
'Programming > Python' 카테고리의 다른 글
[Python] 예외 처리 (try, exept, else, finally) (1) | 2023.08.21 |
---|---|
Streamlit - Kaggle DALYs 데이터 분석 & 시각화 - 1 (0) | 2023.08.16 |
[Python] Pandas 라이브러리 활용하기 (0) | 2023.07.03 |
pandas를 활용한 boto3 (0) | 2023.06.14 |
예제로 알아보는 boto3 (0) | 2023.06.02 |
댓글