[原创]关于python的Singleton
2008-12-31 15:09 Jaypei 阅读(476) 评论(2) 编辑 收藏 举报总是想不到什么好办法在python里写一个完美的Singleton,参考了好多实例,想出了这么个办法
class Singleton(object):
__instance = None
def __new__(classtype, *args, **kwargs):
if classtype != type(classtype.__instance):
classtype.__instance = object.__new__(classtype, *args, **kwargs)
classtype.__instance.init()
return classtype.__instance
def init(self):
pass
__instance = None
def __new__(classtype, *args, **kwargs):
if classtype != type(classtype.__instance):
classtype.__instance = object.__new__(classtype, *args, **kwargs)
classtype.__instance.init()
return classtype.__instance
def init(self):
pass
这样既解决了子类化问题,又解决了__init__重复执行的问题。