Я ищу решение для распечатки t1, преобразованного в Кельвины, без вызова любого из методов ниже. См. В нижней части, как создается t1 и каким должно быть решение для распечатки. Я надеюсь услышать некоторые отзывы в ближайшее время!
class Temperature:
# --- YOUR CODE STARTS HERE
val = 0
def __init__(self,val, unit):
self.val = val
self.unit = unit
def celcius(self):
if self.unit == "F":
new_temp = (self.val - 32)*(5/9)
self.unit = "F"
new_unit = self.unit
return round(new_temp,2), new_unit
elif self.unit == "K":
new_temp = self.val - 273.15
self.unit = "F"
new_unit = self.unit
return round(new_temp,2), new_unit
else:
return round(self.val,2), self.unit
def fahrenheit(self):
if self.unit == "C":
new_temp = (self.val * (9/5)) + 32
self.unit = "F"
new_unit = self.unit
return round(new_temp,2), new_unit
elif self.unit == "K":
new_temp = (val - 273.15) * (9/5) + 32
self.unit = "F"
new_unit = self.unit
return round(new_temp,2), new_unit
else:
return round(self.val,2), self.unit
def kelvin(self):
if self.unit == "F":
new_temp = (self.val - 32)*(5/9) + 273.15
self.unit = "K"
new_unit = self.unit
return round(new_temp,2), new_unit
elif self.unit == "C":
new_temp = self.val + 273.15
self.unit = "K"
new_unit = self.unit
return round(new_temp,2), new_unit
else:
return round(self.val,2), self.unit
def __str__(self):
t1 = Temperature(31, "F")
print(t1)
Проблема заключается в печати t1 для получения результата 272,59 K