[스트림릿] (2) 기본 문법 _ Input Widget

박선영·2023년 10월 23일
0

[스트림릿 Streamlit]

목록 보기
3/7
post-thumbnail

에필로그👋

KT AIVLE SCHOOL 수업에서 배운 내용을 입맛에 맞게 정리하였습니다.


📊스트림릿 Streamlit📊

내가 이해한 스트림릿이란,
"코딩에 대한 부담없이 빠르고 간편하게 데이터를 효과적으로 시각화할 수 있도록 도와주는 파이썬 기반 웹어플리케이션 툴"이다.

(개발은 부담스럽지만 데이터 시각화에 관심이 많은 나 같은 사람들을 위한 툴이 아닌가 싶다.)

🕹️Input Widgets🕹️

버튼, 슬라이더, 위젯, 입력 등의 위젯을 통해 사용자와 상호작용할 수 있다. 참고

Button

if st.button('Say hello'):
	st.write('Hello')
else:
	st.write('Goodbye')

Radio Button

Radio Button은 목록에서 하나의 입력값을 선택할 수 있다.

genre = st.radio('좋아하는 영화 장르를 선택하세요',
				('코미디', 'SF', '액션'))
                
st.write(genre+"를 선택하였습니다.")

Check Box

agree = st.checkbox('동의합니다.')
if agree:
	st.write('😄') 

Select Box

Radio Button과 동일하게 하나의 선택값을 입력받지만 목록 형태로 시각화 한다.

option = st.selectbox('연락 수단',
					  ('Email', 'Mobile phone', 'Office phone'))
st.write('네,', option+'으로 연락드리겠습니다.')

Multi Select

Select Box와 동일한 형태로 시각화되지만 여러 개의 입력값을 리스트로 받을 수 있다.

options = st.multiselect('좋아하는 색을 모두 선택하세요',
						['Green', 'Yellow', 'Red', 'Blue'],
						['Yellow', 'Red'])

st.write('선택 목록: ')
for i in options:
	st.write(i)

Text Input

Text Input은 사용자로부터 직접 문자열을 입력받을 수 있다.

title = st.text_input('최애 영화를 입력하세요 ',
					  '영화를 한 번도 안봤어요.') # 최초 입력 값
st.write('당신이 가장 좋아하는 영화는', title+'이군요.')

(난 인터스텔라를 재밌게 봤다. SF 취향)

Number Input

Number Input은 입력 허용 구간(min~max) 내의 숫자를 입력받을 수 있다.

# min~max value:입력 허용구간, value:최초 입력 값, step:증분 값
number = st.number_input(
		'숫자를 입력하세요(1-10)',
        min_value=1, max_value=10, value=5, step=1)
st.write(f'현재 숫자는 {number}입니다.')

Date Input

Date Input은 달력으로 날짜를 입력받을 수 있다.

date = st.date_input('당신의 생일을 입력하세요.',
                    datetime(2000, 1, 1)) # 최초 입력값
st.write(f'당신의 생일은 {date}이군요.')

Slider

값 선택

Slider를 사용하여 선택된 특정 값을 입력받을 수 있다.

age = st.slider('나이를 입력하세요.', 0, 150, 20)
st.write(f'저는 {age}살 입니다.')

숫자 구간 선택

Slider를 사용하여 입력 허용 구간 내에서 구간을 입력받을 수 있다.
입력 허용 구간 선택 시 최소/최대의 데이터 타입이 동일해야 한다.

values = st.slider('원하는 연봉을 선택하세요.(단위: 천만)',
                  0.0, 10.0, (3.0, 4.0))
st.write(f'연봉이 {values[0]:.0f}천만원에서 {values[1]:.0f}천만원인 직장을 검색하겠습니다.')

날짜 구간 선택

Slider를 사용하여 입력 허용 구간 내에서 날짜 구간을 입력받을 수 있다.

slider_date = st.slider(
		'여행가고 싶은 기간을 선택해주세요.',
        min_value = datetime(2023,1,1),
        max_value = datetime(2023,12,31),
        value = (datetime(2023,10,23), datetime(2023,12,31)),
        format='YY/MM/DD')
st.write(f'{slider_date[0]}부터 {slider_date[1]}까지로 여행일정을 추천해드리겠습니다.')

profile
데이터를 만지는 사람

0개의 댓글