돌맹이
[Python] BMI 계산기 (with. streamlit) 본문
python에서 streamlit 라이브러리를 이용하여 BMI 계산기를 만들어 보았다
venv 가상환경에서 작동시켰더니 다음과 같이 작동하였다
# -*- coding: utf-8 -*-
# BMI 계산기 만들기
import streamlit as st
def main():
# 제목
st.title('BMI 계산기')
# 몸무게 입력
weight = st.number_input('몸무게 입력 (kg)', step=1, value=65)
(" ")
(" ")
# 단위 선택
h_format = st.radio('키 입력 단위를 설정하세요', ('cm', 'feet'))
(" ")
(" ")
# 단위별 BMI 계산기 입력
if (h_format=='cm'):
height = st.number_input('키 입력 (cm)', step=1, value=170)
try:
result=(weight*10000)/(height*height)
except:
pass
elif (h_format=='feet'):
height = st.number_input('키 입력 (feet)', step=0.1, value=5.5)
try:
result=(weight*10.764)/(height*height)
except:
st.text('숫자를 입력해주세요')
else:
st.text('오류발생!!')
if (st.button('BMI 계산하기')):
if (height==0 or weight==0):
st.error('키 또는 몸무게를 입력하세요')
else:
if (result>25):
st.warning(f'BMI = {round(result, 2)}, 비만입니다')
elif (result<18):
st.error(f'BMI = {round(result, 2)}, 저체중입니다')
else:
st.info(f'BMI = {round(result, 2)}, 정상체중입니다')
if __name__ == "__main__":
main()
'programming > Python' 카테고리의 다른 글
[Python] Pandas (0) | 2022.12.29 |
---|---|
[Python] NumPy(넘파이) (0) | 2022.12.28 |
[Python] Docstring(문서화) (0) | 2022.12.27 |
[Python] 문자열 포매팅(String Formatting) (0) | 2022.12.27 |