I want to pass class method as and a default argument to another class method, so that I can reuse the method as a @classmethod:
@classmethod
@classmethod cl
The way you are trying wont work, because Foo isnt defined yet.
class Foo: @classmethod def func1(cls, x): print 'something: ', cls, x def func2(cls, a_func=Foo.func1): a_func('test') Foo.func2 = classmethod(func2) Foo.func2()