Код: -
class Celsius:
def __get__(self, obj, owner):
return self.__fahrenheit
def __set__(self, obj, value):
if not isinstance(value, int):
raise TypeError("'fahrenheit' must be an integer.")
self.__fahrenheit = value
class Temperature:
fahrenheit = Celsius()
celsius = 0.0
def __init__(self,fahrenheit):
self.fahrenheit = fahrenheit
#Temperature.fahrenheit = Temperature.celsius + 32
Temperature.celsius = float(self.fahrenheit - 32)
e1 = Temperature(78)
print(e1.fahrenheit, e1.celsius)
e1.celsius = 2.0
print(e1.fahrenheit, e1.celsius)
Вывод: - 78 46,0 78 2.0
Я хочу, чтобы значение e1.fahrenheit было 34, когда e1.celsius = 2.0, но не хочу добавьте больше методов или классов.