File size: 2,814 Bytes
11fa257 a99f0fe 46b19ef 11fa257 46b19ef 11fa257 d5769f9 11fa257 d5769f9 46b19ef 7b6e912 d5769f9 46b19ef d5769f9 a99f0fe 46b19ef a99f0fe 7b6e912 46b19ef 7b6e912 d5769f9 46b19ef d5769f9 46b19ef d5769f9 46b19ef d5769f9 46b19ef d5769f9 46b19ef d5769f9 46b19ef d5769f9 46b19ef a99f0fe |
1 2 3 4 5 6 7 8 9 10 11 12 13 14 15 16 17 18 19 20 21 22 23 24 25 26 27 28 29 30 31 32 33 34 35 36 37 38 39 40 41 42 43 44 45 46 47 48 49 50 51 52 53 54 55 56 57 58 59 60 61 62 63 64 65 66 67 68 69 70 71 72 73 74 75 76 77 78 79 80 81 82 83 84 85 86 87 88 |
import streamlit as st
# Revised Function to calculate calories burned during swimming based on swim style
def calories_swim(time_hr, weight_kg, style_mets):
return (time_hr * style_mets * 3.5 * weight_kg) / 200
# Function to calculate calories burned during pull-ups based on grip style
def calories_pullup(reps, weight, grip_style_factor):
return (reps * 5 * weight) / 150 * grip_style_factor
# Streamlit UI
st.title("Calories Burned Calculator πββοΈπͺ")
st.sidebar.header("Input Parameters π οΈ")
# Swimming parameters
time_swim = st.sidebar.slider("Swimming Time (hours)", 0.0, 5.0, 2.0)
weight = st.sidebar.number_input("Your weight (lbs)", 100, 300, 175)
# Pull-Up parameters
reps = st.sidebar.slider("Number of Pull-Ups", 0, 500, 200)
# Choose Exercise Type
st.sidebar.subheader("Choose Exercise Type π€ΈββοΈ")
exercise_type = st.sidebar.selectbox(
"",
["Swim Jim πββοΈ", "Ring King π", "Both Boost π"]
)
# Revised Swim Styles with METs
swim_styles = {
"Treading Water π": 6.0,
"Backstroke πββοΈ": 9.0,
"Breaststroke πΈ": 10.0,
"Freestyle Light π¦": 11.0,
"Freestyle Vigorous π": 13.0,
"Butterfly π¦": 12.0,
"Dog Paddle πΆ": 7.0
}
# Grip Styles with factors
grip_styles = {
"Standard π": 1,
"Mixed Grip β¨": 1.1,
"Wide Grip π ": 1.2
}
st.sidebar.subheader("Choose Swim Style π")
swim_style = st.sidebar.selectbox(
"",
list(swim_styles.keys())
)
st.sidebar.subheader("Choose Ring Style πͺ")
grip_style = st.sidebar.selectbox(
"",
list(grip_styles.keys())
)
# Calculation
weight_kg = weight * 0.453592
calories_from_swimming = calories_swim(time_swim, weight_kg, swim_styles[swim_style])
calories_from_pullups = calories_pullup(reps, weight, grip_styles[grip_style])
# Display Results
st.subheader(f"Calories Burned π₯")
if exercise_type == "Swim Jim πββοΈ":
st.write(f"Calories burned from swimming: {calories_from_swimming:.2f}")
elif exercise_type == "Ring King π":
st.write(f"Calories burned from pull-ups: {calories_from_pullups:.2f}")
else:
total_calories = calories_from_swimming + calories_from_pullups
st.write(f"Total calories burned: {total_calories:.2f}")
st.subheader("Muscle Groups Worked π¦Ύ")
if exercise_type == "Swim Jim πββοΈ":
st.write("Swimming works the back, shoulders, arms, and legs.")
elif exercise_type == "Ring King π":
st.write("Pull-ups work the back, biceps, and forearms.")
else:
st.write("Doing both exercises works almost all major muscle groups!")
st.subheader(f"Swim Style: {swim_style} π")
st.write(f"METS for chosen style: {swim_styles[swim_style]}")
st.subheader(f"Ring Style: {grip_style} πͺ")
st.write(f"Factor for chosen grip: {grip_styles[grip_style]}")
|