как запретить создавать экземпляры класса

знаю что можно запретить методом __ new __, но не могу понять как


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

Автор решения: n1tr0xs

Я так понимаю, это попытка создать Singleton ?. Тогда это можно сделать так:

class Singleton:
    def __new__(cls):
        if not hasattr(cls, 'instance'):
            cls.instance = super(Singleton, cls).__new__(cls)
        return cls.instance

s1 = Singleton()
s2 = Singleton()

assert s1 is s2
→ Ссылка