consider this simple class:
class A:
def __init__(self):
pass
def afunc(self):
pass
Typically self is a reference to the object, but the init function is responsible for creating the object so how can self be a reference to something that doesn't exist? What is the difference in self for these two functions?