728x90
반응형

반응형
목차 ▽열기
1. 이미지(Image) 파일 출력
from PIL import Image
먼저 이미지 처리를 위한라이브러리를 호출합니다.
st.image()
import streamlit as st
# 이미지 처리를 위한 라이브러리
from PIL import Image
def main():
# 1. 저장되어 있는 이미지 파일을 화면에 보여주기
img = Image.open('./data/image_03.jpg') # 이미지 파일 경로
st.image(img, width=500) # 이미지 너비를 500으로 설정하여 표시
st.image(img, use_column_width=True) # 화면 너비에 맞게 표시
if __name__ == '__main__':
main()

출력

1-1. 응용 (인터넷 이미지 사용)
Image.open('파일경로') 저장되어 있는 이미지를 화면에 표시하거나
인터넷상에 있는 이미지를 화면에 표시할수 있습니다.

import streamlit as st
# 이미지 처리를 위한 라이브러리
from PIL import Image
def main():
#2. 인터넷상에 있는 이미지 화면에 표시하는 방법
url = 'https://i.pinimg.com/originals/15/d0/20/15d020644130434c70f7391cb42e1a15.jpg'
st.image(url, width=300)
if __name__ == '__main__':
main()
출력

2. 동영상(Video) 파일 출력
st.video()
동영상을 화면에 표시합니다.
import streamlit as st
def main():
#3. 동영상을 화면에 보여주기
video_file = open('data/video1.mp4', 'rb')
st.video(video_file)
if __name__ == '__main__':
main()

출력
3. 오디오(Audio) 파일 출력
st.audio()
오디오를 화면에 표시합니다.
import streamlit as st
def main():
#4. 음악파일을 화면에 보여주기
sound_file = open('./data/song.mp3','rb')
st.audio(sound_file, format='audio/mp3')
if __name__ == '__main__':
main()

출력

4. 유저한테 입력받는 Input
st.text_input()
text_input() 함수는 유저한테 문자를 입력받을때 사용합니다.
import streamlit as st
def main():
# 1. 이름 입력받기 (한줄입력)
st.subheader('사용자 입력')
name = st.text_input('이름을 입력하세요.')
print(name)
st.text(name)
# 2. 입력한 글자 수 제한
st.subheader('주소 입력, 글자수 제한 ')
address = st.text_input('주소를 입력하세요.', max_chars=20)
st.text(address)
if __name__ == '__main__':
main()

출력




4-1. 여러행의 글자 입력받기
st.text_area()
유저에게 입력을 받을때 여러행을 입력받을수 있습니다.
import streamlit as st
def main():
# 3. 여러행 입력하는 방법
st.subheader('여러행 입력하는 방법')
message = st.text_area('메세지를 입력하세요.', height=200)
st.text(message)
if __name__ == '__main__':
main()
출력

4-2. 비밀번호 입력받기
import streamlit as st
def main():
# 4. 비밀번호 입력 방법
password = st.text_input('비밀번호를 입력하세요.', type='password')
st.text(password)
if __name__ == '__main__':
main()
출력

4-3. 숫자 입력받기
st.number_input()
숫자 정수와 실수를 입력받을수 있습니다.
import streamlit as st
def main():
# 5. 숫자 입력 ( 정수 min_value=0, max_value=150)
age = st.number_input('나이를 입력하세요.', min_value=0, max_value=150)
# 6. 숫자 입력 (실수)
height = st.number_input('키를 입력하세요.', min_value=0.0, max_value=250.0,step = 0.1)
if __name__ == '__main__':
main()

출력

4-4. 날짜 입력받기
st.date_input()
스트림릿의 date_input() 함수로 유저가 달력에서 날짜를 선택하게 할수 있습니다.
import streamlit as st
def main():
# 7. 날짜 입력
my_date = st.date_input('생일을 입력하세요')
print(my_date)
print(type(my_date))
# 요일 출력
print(my_date.weekday())
print(my_date.strftime('%A'))
st.text(my_date.strftime('%A') + '입니다.')
if __name__ == '__main__':
main()
출력

4-4. 시간입력받기
st.time_input()
time_input() 함수로 유저에게 시간을 입력받을수 있습니다.
import streamlit as st
def main():
# 8. 시간 입력
my_time = st.time_input('시간을 입력하세요')
print(my_time)
st.text(my_time.strftime('%I:%M %p'))
if __name__ == '__main__':
main()
출력

728x90
반응형
'Streamlit > 이론' 카테고리의 다른 글
147. [Python] [Streamlit] : Streamlit에서 한글 폰트 설정하기 (Mac, Windows, Linux) (0) | 2025.02.04 |
---|---|
145. [Python] [Streamlit] : Streamlit(스트림릿) 차트 그리기(2) (0) | 2025.02.04 |
144. [Python] [Streamlit] : Streamlit(스트림릿) 차트 그리기(1) (0) | 2025.02.04 |
143. [Python] [Streamlit] : Streamlit(스트림릿) sidebar 메뉴 만들기 (0) | 2025.02.03 |
141. [Python] [Streamlit] : Streamlit(스트림릿) 다양한 UI 함수 (1) (0) | 2025.02.03 |