版权声明:本文为博主原创文章,未经博主允许不得转载。 https://blog.csdn.net/dutsoft/article/details/52057981
#!/usr/bin/python
#coding: utf-8
"""
an elegant way to spawn singleton
"""

def singleton(cls, *args, **kw):
""" singleton decorator """
instances = {}
def _singleton():
if cls not in instances:
instances[cls] = cls(*args, **kw)
return instances[cls]
return _singleton

@singleton
class TestClass(object):
a = 1
def __init__(self, x=0):
self.x = x

if __name__ == '__main__':
one = TestClass()
two = TestClass()

print one.a
print id(one)
print id(two)
print one is two
one.x = 1
print one.x
print two.x
---------------------
作者:dutsoft
来源:CSDN
原文:https://blog.csdn.net/dutsoft/article/details/52057981
版权声明:本文为博主原创文章,转载请附上博文链接!

最新文章

  1. HTTP 错误 500.21 - Internal Server Error
  2. Makefile经典教程(掌握这些足够)
  3. EF下泛型分页方法,更新方法
  4. Linux设计准则
  5. Git 远程操作详解
  6. 破解ckfinder2.3 去除版本号和标题提示
  7. ASP.NET MVC中几个运用技巧
  8. vm虚拟机挂载usb
  9. Linux逻辑卷创建
  10. HBase in 2013
  11. 导入excel错误:外部表不是预期的格式 解决方案(Oledb)
  12. 《Linear Algebra and Its Applications》-chaper2-矩阵代数中的基本性质
  13. Activity的生命周期与加载模式——Activity的4种加载模式
  14. 【php】windows安装PHP5.5+Apache2.4
  15. C语言程序设计第五次作业——循环结构(1)
  16. 运用python绘制小猪佩奇
  17. Flink安装部署
  18. java算法-单向队列
  19. kafka管理器之kafka-manager
  20. scala 模式匹配详解 3 模式匹配的核心功能是解构

热门文章

  1. OSPF选路原则
  2. 钓鱼(洛谷 P1717)
  3. UVA12345 (带修改的莫队)
  4. 哀悼改变全站颜色为灰色CSS代码收藏
  5. CodeForces 596B Wilbur and Array
  6. hdu 3943
  7. F - The Minimum Length
  8. 巧用MySQL AHI加速神器,让你的InnoDB查询飞起来!
  9. 如何使用shell收集linux系统状态,并把结果发给远端服务器
  10. 【面试被虐】如何只用2GB内存从20亿,40亿,80亿个整数中找到出现次数最多的数?