— My goal is to make a code where user has to enter temperature, then user has to enter unit (C or F), then I wanna show conversion to F if users type C and vice versa. what wrong here tell me please I am super new to python and learning it all day, thanks.
print("Lets convert from C to F/ F to C") temp = int(input("enter the temperature: ")) unit = input("enter the unit (C or F)") if unit == C: F = temp * 1.8 + 32 print(temp +"C is equal to"+F +"F") elif unit == F: C = temp / 1.8 - 32 print(temp + "F is equal to" +C + "C")
Advertisement
Answer
You might want to pay more attention to strings.
- use string literals
'F'
and'C'
(not bareF
andC
) in theif
conditions. - explicitly convert
int
tostr
by usingstr()
, when you concatenate anint
andstr
. Or better, use f-string.
print("Lets convert from C to F/ F to C") temp = int(input("enter the temperature: ")) unit = input("enter the unit (C or F)") if unit == 'C': F = temp * 1.8 + 32 print(str(temp) +"C is equal to"+str(F) +"F") elif unit == 'F': C = temp / 1.8 - 32 print(str(temp) + "F is equal to" +str(C) + "C")
By the way, I am afraid the formula is a little bit off. Another version, in which I corrected the formula and used f-string, is as follows:
print("Let's convert from °C to °F or °F to °C!") temp = int(input("Enter the temperature: ")) unit = input("Enter the unit (C or F): ") if unit.upper() == 'C': F = temp * 1.8 + 32 print(f"{temp}°C is equal to {F}°F") elif unit.upper() == 'F': C = (temp - 32) / 1.8 print(f"{temp}°F is equal to {C}°C")