class Classname(object), what sort of word is 'object' in Python?

keyword, object, python

Solution

`object` is a (global) variable. By default it is bound to a built-in class which is the root of the type hierarchy.

(This leads to the interesting property that you can take any built-in type, and use the `__bases__` property to reach the type called object).

Everything built-in that isn't a keyword or operator is an identifier.

Problem

When I create a module with its sole content: ``` class Classname(randomobject): pass ``` And I try to run the .py file of the module the interpreter says that `randomobject` is not defined. But when I do: ``` class Classname(object): pass ``` The module runs just fine. So if `object` is not a keyword, then what is it?

Original source

Related problems