Given a python class which will be instantiated only once, i.e. there will be only one object of the class. I was wondering in which cases it makes sense to create a single class instance instead of working directly with the class instead. There is a similar [thread][1], but it has a different focus: (1) it is about grouping global variables and functions into a class and (2) it is not python-specific. The latter means it does not consider the fact that (in python) classes are objects too. [1]: http://programmers.stackexchange.com/questions/213343/is-it-a-bad-idea-to-create-a-class-which-will-only-have-one-instance