【发布时间】:2012-04-19 12:25:03
【问题描述】:
如何实现重载float() 的方法,即当我编写的类的实例传递给float() 时调用它?
我开始编写自己的Fraction 类:
class Fraction:
def __init__(self, num = 0, denom = 1):
self.num = float(num)
self.denom = float(denom)
现在我希望能够做到这一点:
float(Fraction())
我尝试使用下面的方法,但没有奏效。
def float(self):
return self.num / self.denom
【问题讨论】:
-
@DavidHeffernan 你能帮我个忙吗?我的问题是:stackoverflow.com/questions/9938329/… 因含糊不清而被关闭。我对其进行了编辑,现在对于 SO 来说,这似乎是一个完全合法的问题。
-
问题是,我的帐户因此被自动禁止,我不能再问任何问题了,所以如果您认为我的问题足够好,请给它投票吗?
-
@DavidHeffernan ???至少回复说“是”或“否”?
-
是的,+1,在我看来是一个公平的 Q
-
@DavidHeffernan 非常感谢。如果它不会太多,您是否也可以标记问题以引起主持人的注意,以便可以重新打开它? (显然,该特权也被剥夺了:
标签: python floating-point operator-overloading overloading