diff options
Diffstat (limited to 'foo.py')
-rw-r--r-- | foo.py | 13 |
1 files changed, 12 insertions, 1 deletions
@@ -1,10 +1,21 @@ class Foo: pass + def hello(): print('hello, world') + x = 13 class Square(): + def __new__(cls, x): + instance = super(Square, cls).__new__(cls) + instance.__init__(x) + return instance.squared def __init__(self, x): self.inital = x - self.squared = x**2 + self.squared = x**2 # without .self the variable would be shared among all instances + def __str__(self): + return str(self.__class__) + ": " + str(self.__dict__) + +area = Square(5.5) # if __new__ wasn't implemented, instead of 30.25 float print would call __str__ and return <class '__main__.Square'>: {'inital': 5.5, 'squared': 30.25} +print(area)
\ No newline at end of file |