как запретить создавать экземпляры класса
знаю что можно запретить методом __ 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