Как ограничить создание экземпляров класса?(не больше 5 экземпляров класса)

Хочу создать класс в котором можно определить только 5 экземпляров класса, через метод new

class Dog:

    __count = 0

    def __new__(cls, *args,**kwargs):
        if Dog.__count<5:
            cls.self.__name = super(Dog, cls).__new__(cls)
        else:
            print('Не больше пяти собак!')

    def __init__(self):
        Dog.__count += 1

Ответы (1 шт):

Автор решения: Эникейщик
def __new__(cls, *args,**kwargs):

    if Dog.__count<5:
        obj = super(Dog, cls).__new__(cls)
        return obj
    else:
        print('Не больше пяти собак!')

Справка по __ new__().

→ Ссылка