Spaces:
Sleeping
Sleeping
| import streamlit as st | |
| def convert_temperature(value, from_unit, to_unit): | |
| """Converts temperature between Celsius, Fahrenheit, and Kelvin.""" | |
| if from_unit == "Celsius": | |
| if to_unit == "Fahrenheit": | |
| return (value * 9/5) + 32 | |
| elif to_unit == "Kelvin": | |
| return value + 273.15 | |
| else: | |
| return value # No conversion needed for Celsius to Celsius | |
| elif from_unit == "Fahrenheit": | |
| if to_unit == "Celsius": | |
| return (value - 32) * 5/9 | |
| elif to_unit == "Kelvin": | |
| return (value + 459.67) * 5/9 | |
| else: | |
| return value # No conversion needed for Fahrenheit to Fahrenheit | |
| elif from_unit == "Kelvin": | |
| if to_unit == "Celsius": | |
| return value - 273.15 | |
| elif to_unit == "Fahrenheit": | |
| return (value * 9/5) - 459.67 | |
| else: | |
| return value # No conversion needed for Kelvin to Kelvin | |
| else: | |
| raise ValueError("Invalid temperature unit") | |
| st.title("Temperature Converter") | |
| with st.container(): | |
| col1, col2 = st.columns(2) | |
| with col1: | |
| temperature_value = st.number_input("Enter temperature:", min_value=-273.15, step=0.1) | |
| with col2: | |
| from_unit = st.selectbox("From Unit:", options=["Celsius", "Fahrenheit", "Kelvin"]) | |
| to_unit = st.selectbox("To Unit:", options=["Celsius", "Fahrenheit", "Kelvin"]) | |
| converted_value = convert_temperature(temperature_value, from_unit, to_unit) | |
| st.write(f"{temperature_value} {from_unit} is equal to {converted_value:.2f} {to_unit}") |