從其中一個博客,我有以下代碼,我正在使用它來了解python property
的工作。瞭解Python屬性的工作
class Celsius:
def __init__(self, temperature = 0):
self._temperature = temperature
def to_fahrenheit(self):
return (self.temperature * 1.8) + 32
@property
def temperature(self):
print("Getting value")
return self._temperature
@temperature.setter
def temperature(self, value):
if value < -273:
raise ValueError("Temperature below -273 is not possible")
print("Setting value")
self._temperature = value
Q1:在__init__
方法,爲什麼用self._temperature
作者。它應該不是self.temperature
?控制權將如何去@temperature.setter
?
我希望你在python 3下運行python 2,你需要從'object'繼承你的類。 「 – Anthon
」該控件將如何轉到「@ temperature.setter」? - 它不會。 – user2357112