cls到底是什么?类?类对象?

class CCP(object):
    def __new__(cls, *args, **kwargs):
        _instance = ''
        print(cls.__class__)
        print(type(cls))

调试的时候cls是<class '__main__.CCP'>,但是print却是<class 'type'>,请问各位大神,cls到底是什么东西。能不能精确的解释一下。谢谢

cls可以在静态方法中使用,并通过cls()方法来实例化一个对象。运行你的语句后cls返回一个CPP实例对象,等价于CPP();

cls就是类本身,__new__带cls就是用的自己本身的类,就是ccp这个类,所以第一个打印,就是本身的类属性,所以返回的就是主类__main__主程序。而cls本事是个类,所以type结果就告诉你它是一个类类型,就是 class type喽