TGViewer
Python Academy Python Academy @python_academy · 44.2K subscribers
Post #2041 5.02K
Паттерн проектирования Singleton

Одиночка или же синглтон – это паттерн проектирования, описывающий объект, у которого имеется один единственный экземпляр. 

Метод __new__ вызывается для создания экземпляра класса, перед вызовом __init__. На вход первым аргументом метод принимает сам класс, а возвращать должен уже экземпляр (даже можно экземпляр и другого класса).

В примере мы проверяем, есть ли значение у атрибута instance. Если нет, то присваиваем атрибуту экземпляр этого же класса. А если уже экземпляр создан, то просто его возвращаем.

То есть при вызове конструктора класса Singleton, будет возвращаться один и тот же объект из памяти.

#классы #паттерны
  • 👍 6
  • ❤ 1
More from @python_academy
  1. Sep 28, 2026SCons SCons — это современная система сборки программного обеспечения, основанная на Pytho…
  2. Sep 27, 2026Что такое глубокая копия? Глубокая копия используется для хранения значений, которые уже с…
  3. Sep 26, 2026Pyrogram: Работа с Telegram API на Python Pyrogram - это выдающаяся библиотека на Python,…
  4. Sep 25, 2026Функция reload() Функция reload() в Python перезагружает ранее импортированный модуль. Это…
  5. Sep 24, 2026FFmpeg: Лучшее решение для обработки мультимедийных файлов FFmpeg - это бесплатная и откры…
  6. Sep 23, 2026Возврат нескольких значений из функции Знаете ли вы, что можно осуществлять возврат нескол…
Threads Profile ViewerView any public Threads profile without an account.Open ThreadLook →Writing with AI? Make it sound human.Metric37 rewrites AI drafts so they read naturally. Free AI detector, 1,500 words free.Try Metric37 →