saherPervaiz's picture
Create app.py
21fdf01 verified
import streamlit as st
# Temperature conversion functions
def celsius_to_fahrenheit(celsius):
return (celsius * 9/5) + 32
def celsius_to_kelvin(celsius):
return celsius + 273.15
def fahrenheit_to_celsius(fahrenheit):
return (fahrenheit - 32) * 5/9
def fahrenheit_to_kelvin(fahrenheit):
return fahrenheit_to_celsius(fahrenheit) + 273.15
def kelvin_to_celsius(kelvin):
return kelvin - 273.15
def kelvin_to_fahrenheit(kelvin):
return celsius_to_fahrenheit(kelvin_to_celsius(kelvin))
# Streamlit app
st.title("Temperature Converter 🌡️")
st.subheader("Convert temperatures between Celsius, Fahrenheit, and Kelvin")
# Input for temperature and unit
temperature = st.number_input("Enter the temperature:", value=0.0)
unit = st.selectbox("Select the unit of the input temperature:", ["Celsius", "Fahrenheit", "Kelvin"])
# Conversion logic
if st.button("Convert"):
if unit == "Celsius":
fahrenheit = celsius_to_fahrenheit(temperature)
kelvin = celsius_to_kelvin(temperature)
st.write(f"**Fahrenheit:** {fahrenheit:.2f}°F")
st.write(f"**Kelvin:** {kelvin:.2f} K")
elif unit == "Fahrenheit":
celsius = fahrenheit_to_celsius(temperature)
kelvin = fahrenheit_to_kelvin(temperature)
st.write(f"**Celsius:** {celsius:.2f}°C")
st.write(f"**Kelvin:** {kelvin:.2f} K")
elif unit == "Kelvin":
celsius = kelvin_to_celsius(temperature)
fahrenheit = kelvin_to_fahrenheit(temperature)
st.write(f"**Celsius:** {celsius:.2f}°C")
st.write(f"**Fahrenheit:** {fahrenheit:.2f}°F")
st.write("Note: Ensure the input values are within valid ranges for temperature conversions.")