본문 바로가기
Python

[Python] [Streamlit 사용법] 2. input_text

by bryan.oh 2022. 2. 17.
반응형

Streamlit
input_text

 

html tag 의 <input type="text"... 와 같은 것입니다.

 

기본 사용 법

import streamlit as st

st.title("Streamlit Test")
input = st.text_input("message")

이렇게 표시됩니다.

그리고 파이썬에서

입력된 텍스트를 가져오는 방법 1

input = st.text_input("message")
st.write(input)

input 변수를 그대로 써도 되고 str(input) 으로 사용해도됩니다.
( 변수명은 마음대로 >,.< )

코드를 이렇게 하고, input 에 메시지를 입력하고, input 에서 focus out 하면

input 아래에 input 의 값이 text 로 써집니다.

입력된 텍스트를 가져오는 방법 2

key 옵션과 session_state 사용하기

session_state 로 이렇게 사용할 수 있습니다. 아주 유용합니다.

 

 

옵션

input = st.text_input(label="Message", value="기본값", max_chars=10, help='input message < 10')

 

autocomplete 옵션

전 이미 존재하는 텍스트들을 미리 넣어두고 텍스트를 입력하면 보여주는.. 그런것인줄 알았는데.

단순히 브라우저에서 지원하는 자동입력 기능입니다. 예를들면, 쇼핑몰에서 input 값에 입력했던 주소나 이름, 전화번호등등..

주로 사용되는 값으로는 "off", "on", "name" 등이 있습니다.

자세한건 공식 문서 링크로~

 

on_change 옵션

def text_changed():
    print(st.session_state.msg)

input = st.text_input(label="Message", key="msg", on_change=text_changed)

이렇게 on_change 에 python 함수를 써두면, 

텍스트를 수정 후 input box 에서 focus 가 나오면, text_changed() 가 실행됩니다.

텍스트 값은, 위에서 설명했듯이 session_state 로 가져올 수 있습니다.

 

 

 

 

728x90
반응형

댓글