quixООП в питоне - штука достаточно хитрая, в том плане, что питон во всю использует метапрограммирование. Это значит, что объявление класса и то, как он будет на самом деле устроен в рантайме, может существенно отличаться. Вы, насколько я понимаю, привели пример модели Джанги. Вот там всё очень не просто и много магии происходит за кулисами.
quix
что говорит наличие AnyClass внутри скобок
В питоне вообще всё есть объект, и класс (как это не странно) это тоже объект. Поэтому классы вполне могут быть аргументами функций, так же как вообще любые сущности.
def factory(cls, *args, **kw):
return cls(*args, **kw)
class A:
a = 4
class B:
a = 5
obj1 = factory(A)
obj2 = factory(B)
print(obj1.a, obj2.a)