The Singleton Pattern is a creational design pattern that ensures a class has only one instance, and provides a global point of access to that instance.
“Single Instance”: The Singleton ensures that only one object of the class is created throughout the application.
Use Case: Useful when you need to control access to shared resources, like database connections or logging.
Steps
Make the constructor of the class private to prevent direct instantiation.
Provide a static method that will return the single instance of the class.
class Singleton: _instance = None def __new__(cls): if cls._instance is None: cls._instance = super(Singleton, cls).__new__(cls) return cls._instance# Singleton usagesingleton1 = Singleton()singleton2 = Singleton()print(singleton1 is singleton2) # Output: True (Both are the same instance)