How do I implement a method that overloads float(), i.e. it is called when an instance of a class I've written is passed to float()?

I am starting to write my own Fraction class:

class Fraction:
    def __init__(self, num = 0, denom = 1):
        self.num = float(num)
        self.denom = float(denom)

Now I want to be able to do this:

float(Fraction())

I tried using the below method, but that didn't work.

def float(self):
    return self.num / self.denom
Edit
Report