Eine Metaklasse ist ein Klasse, deren Instanzen Klassen sind.
Eine „gewöhnliche“ Klasse definiert das Verhalten der Klasseninstanzen, während eine Metaklasse das Verhalten von Klassen (Instanzen der Metaklasse) bestimmt.
Manche sagen: Metaklassen in Python sind "Lösungen, die auf ein Problem warten".
Dennoch gibt es zahlreiche Anwendungsgebiete: