class A:
@classmethod
def a(x):
print('a')
@staticmethod
def b():
print('b')
def c():
print('c')
def d(self): #instance method
print(self)
A.a() # calling using class
A.b() # calling using class
A().b() # calling using instance
A.c() # calling using class
A().d() # calling using the object
A().c() # calling using instance but returning error
I've created a simple class and different methods, what is the type of method c( ) here? it is not static as if it was static method it could have been called by an instance too but it returns an error in that case, it is not an class method either as if it was, we should have get argument like cls while defining the function, so what type is the method c( ) here?