streamlit으로 점심 추천 웹앱 만들기

2025. 8. 7. 17:24·데이터 분석/03. streamlit

배포 링크 : https://randomlunchrecommend-g2xihrzrbzvcyvhwvuagz4.streamlit.app/

사용 프로그램 : visual studio code(가상환경에서 작업)


1. 앱 설명

  • 주제 : 랜덤 점심 추천 웹
    • 사용자가 음식 카테고리를 선택하면 그에 맞는 메뉴를 랜덤으로 추천해주는 웹앱
  • 핵심 기능
    • 음식 종류 선택 : 사용자는 카테고리에서 원하는 것을 선택할 수 있습니다.
    • 추천 버튼: 사용자는 버튼을 누르면 해당 카테고리에서 메뉴가 랜덤으로 선택됩니다. 
  • 동작의 전체 흐름 : 사용자가 메뉴 종류를 고르고 → 버튼을 누르면 → 그 종류에서 하나를 랜덤으로 추천해서 보여주는 앱

┌──────────────────────┐
│   Streamlit 앱 실행                           │
└─────────┬────────────┘
          ↓
┌──────────────────────┐
│    제목 표시 (st.title)                         │
└─────────┬────────────┘
          ↓
┌──────────────────────┐
│ 음식 종류 선택 UI (st.selectbox)      │
└─────────┬────────────┘
          ↓
┌─────────────────────┐
│ 버튼 클릭 대기 (st.button)              │
└─────────┬───────────┘
          ↓
┌─────────────────────────┐
│ 선택된 종류의 메뉴 리스트에서 랜덤 추천  │
│         → random.choice()                         │
└─────────┬───────────────┘
          ↓
┌─────────────────────────┐
│ 결과 출력 (st.success 등)                        │
└─────────────────────────┘


 2. 사용한 주요 함수 정리

 

함수명 설명 예시
import streamlit as st Streamlit 라이브러리를 불러오는 선언 -
st.title() 앱 상단에 크게 제목을 표시 st.title("랜덤점심 추천")
st.selectbox() 사용자에게 선택지 드롭다운을 제공 category = st.selectbox("종류를 선택", [...])
st.button() 버튼을 만들고, 눌렀을 때만 조건 실행 if st.button("추천받기"):
st.success() 초록색 강조 메시지를 출력 (좋은 결과 등) st.success("오늘은 김치찌개!")
st.write() (보조로 사용) 텍스트, 변수, 리스트 등 일반 출력 st.write(category)
import random 파이썬 기본 랜덤 라이브러리 -
random.choice() 리스트에서 무작위로 하나 뽑기 random.choice(menu_dict[category])
 

3.실행 화면

① 카테고리에서 종류 선택

② 오늘의 점심 추천받기 클릭 -> 추천메뉴 

'데이터 분석 > 03. streamlit' 카테고리의 다른 글

streamlit으로 로그인 페이지 만들기  (2) 2025.08.11
두번째 레슨, streamlit 문법 알아보기  (3) 2025.08.09
첫번째 레슨, streamlit 실행 및 종료와 argument  (3) 2025.08.09
[Streamlit] BMI계산기  (8) 2025.08.06
'데이터 분석/03. streamlit' 카테고리의 다른 글
  • streamlit으로 로그인 페이지 만들기
  • 두번째 레슨, streamlit 문법 알아보기
  • 첫번째 레슨, streamlit 실행 및 종료와 argument
  • [Streamlit] BMI계산기
Growth DA Log
Growth DA Log
Growth DA Log 님의 블로그 입니다.
  • Growth DA Log
    Growth DA Log님의 블로그
    Growth DA Log
  • 전체
    오늘
    어제
    • 분류 전체보기 (125)
      • TIS_COMPANY (6)
      • 코딩 테스트 (61)
        • 01. Python (3)
        • 02. SQL (58)
      • 데이터 분석 (53)
        • 01. BigQuery (9)
        • 02. GA4 (1)
        • 02-1. GA4를 더 잘 다루기 위한 마케팅 개.. (5)
        • 03. streamlit (5)
        • 04. Git (12)
        • 05. 데이터 엔지니어링 (3)
        • 06. 데이터 모델링 (11)
        • 07. Excel (0)
        • 08. Tableau (4)
  • 블로그 메뉴

    • 홈
    • 태그
    • 방명록
  • 링크

  • 공지사항

  • 인기 글

  • 태그

    DENSE_RANK
    Reset
    ROW_NUMBER
    코테
    rank
    AARRR
    SQL
    코드잇스프린트후기
    cross_join
    streamlit
    git
    solvesql
    쿼리테스트
    revert
    tableau
    코딩테스트
    tableaubootcamp
    프로그래머스
    이행성
    윈도우함수
  • 최근 댓글

  • 최근 글

  • hELLO· Designed By정상우.v4.10.4
Growth DA Log
streamlit으로 점심 추천 웹앱 만들기
상단으로

티스토리툴바