human
4.2 Class methods
By default, (instance) methods are created when the class is instantiated. On the other hand, class methods are created when the class is defined. In order to distinguish them, class methods must be decorated with @classmethod or @staticmethod. The only difference between both types of methods is that in a @classmethod, the name of the class is passed automatically by the interpreter as the first argument.
assistant
#Here is the Python program you requested.
class A:
    def instance_method(self, x):
        print('executing instance method with args (%s,%s)' % (self, x))
        
    @classmethod
    def class_method(cls, x):
        print('executing class method class_method with args (%s,%s)' % (cls, x))

    @staticmethod
    def static_method(x):
        print('executing static (class) method static_method with arg (%s)' % x)

A.instance_method(1)

A().instance_method(1)

A.class_method(1)

A.static_method(1)