Articles of singleton

Única instancia de clase en Python

Estoy creando una aplicación Python que incluye comunicación de socket con un servidor. Me gustaría tener un módulo que pueda usarse en toda mi aplicación (varios otros módulos). Actualmente mi módulo se ve así: class SocketCommunication: def __init__(self): self.socketIO = SocketIO(settings.ADDRESS, settings.PORT, Namespace) def emit(self, message, data): json_data = json.dumps(data.__dict__) self.socketIO.emit(message, json_data) class Namespace(BaseNamespace): def […]

Asegúrese de que solo se ejecute una instancia de una clase

Tengo una clase subyacente que quiero colocar en algún código. Solo quiero que se cree una instancia o que se inicie una vez para una aplicación determinada, aunque podría llamarse muchas veces. El problema con el código siguiente es que LowClass se inicia una y otra vez. Solo quiero que empiece una vez por prueba […]

Necesito entender el flujo de __init__, __new__ y __call__

class Singleton(type): def __init__(self, *args, **kwargs): print ‘calling __init__ of Singleton class’, self print ‘args: ‘, args print ‘kwargs: ‘, kwargs super(Singleton, self).__init__(*args, **kwargs) self.__instance = None def __call__(self, *args, **kwargs): print ‘running __call__ of Singleton’, self print ‘args: ‘, args print ‘kwargs: ‘, kwargs, ‘\n\n’ if self.__instance is None: self.__instance = super(Singleton, self).__call__(*args, **kwargs) […]

Python: @staticmethod con @property

quiero Stats.singleton.twitter_count += 1 y pensé que podía hacer class Stats: singleton_object = None @property @staticmethod def singleton(): if Stats.singleton_object: return Stats.singleton_object Stats.singleton_object = Stats() return Stats.singleton() Pero lanza una excepción: >>> Stats.singleton.a = “b” Traceback (most recent call last): File “”, line 1, in TypeError: ‘property’ object has only read-only attributes (assign to .a)

Método de metaclase de Python3 Singleton no funciona

Vi muchos métodos para hacer un singleton en Python e intenté usar la implementación de metaclase con Python 3.2 (Windows), pero no parece que devuelva la misma instancia de mi clase de singleton. class Singleton(type): _instances = {} def __call__(cls, *args, **kwargs): if cls not in cls._instances: cls._instances[cls] = super(Singleton, cls).__call__(*args, **kwargs) return cls._instances[cls] class […]

Sentido de Python / instanciación de objetos

Estoy aprendiendo Python y he estado tratando de implementar una clase de tipo Singleton como prueba. El código que tengo es el siguiente: _Singleton__instance = None class Singleton: def __init__(self): global __instance if __instance == None: self.name = “The one” __instance = self else: self = __instance Esto funciona en parte, pero la parte self […]

¿Qué tal tener un SingletonModel en Django?

Estoy haciendo un sitio web muy simple en Django. En una de las páginas hay una checkbox vertical. Necesito darle al cliente una forma de editar el contenido de la casilla de HTMLField como un campo HTMLField . La primera forma que se me ocurrió fue hacer un Ticker modelo que solo tendrá una instancia. […]

Se unen las cuerdas en Python

¿Python tiene un grupo de todas las cadenas y están (cadenas) singletons allí? Más preciso, en el siguiente código se crearon una o dos cadenas en la memoria: a = str(num) b = str(num) ?

¿Por qué un módulo de python actúa como un singleton?

Creo un diccionario desde una base de datos remota como parte de la ejecución de mi aplicación. Este proceso es bastante pesado en E / S, por lo que decidí crear una instancia “singleton” de este diccionario y simplemente llamarlo cuando sea necesario en mi aplicación. El código se ve como (en Dictionaries.py ): state_code_dict […]

¿Cómo puedo memorizar una instanciación de clase en Python?

Ok, aquí está el escenario del mundo real: estoy escribiendo una aplicación, y tengo una clase que representa un cierto tipo de archivos (en mi caso, esto es fotografías pero ese detalle es irrelevante para el problema). Cada instancia de la clase de fotografía debe ser única para el nombre de archivo de la foto. […]