【发布时间】:2016-11-15 12:57:19
【问题描述】:
好吧,我对 python 非常陌生,现在我尝试将 c# 代码翻译成 IronPython。 属性有问题:
例如,这是我的课程(从 http://www.programiz.com/python-programming/property 获得):
class SomeClass(object):
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):
print("Setting value")
self.temperature = value
当我尝试从像这样的另一个类中获取此属性时
cb = SomeClass()
temp = cb.to_fahrenheit()
我得到了一个永恒的调用,打印“获取价值”,最后是 StackOverflowException。属性有什么问题?这是使用 ref 参数翻译 getter 和 setter 的一小部分任务,但我无法继续处理这个错误。
【问题讨论】:
标签: c# python properties ironpython