Class Types

Class types, or new-style classes, are callable. These objects normally act as factories for new instances of themselves, but variations are possible for class types that override __new__. The arguments of the call are passed to __new__ and, in the typical case, to __init__ to initialize the new instance.