#!/usr/bin/env python
#coding:utf-8class Borg(object):_share_state = {}def __init__ (self):'''将__dict__和_share_state指向了同一个地址这样会使_share_state的内容始终保持与__dict__同步由于_share_state是类变量,最终就可以实现多个实例的__dict__保持同步的效果'''self.__dict__ = self._share_stateclass Singleton(Borg):def __init__ (self, *args, **kwargs):super(Singleton, self).__init__()self.val = args[0]def __str__ (self):return self.valx = Singleton('test1')
y = Singleton('test2')
z = Singleton('test3')print x #test3
print y #test3
print z #test3

本文涉及的知识点:

1、__dict__

2、类变量

3、super

4、__str__

5、Python赋值的原理

转载于:https://www.cnblogs.com/tuzkee/archive/2013/02/06/2908120.html

[深入Python]Alex Martelli的Borg类相关推荐

  1. 学校(School)主要有3大角色:学校(School),讲师(Teacher),学员(Student)。请用Python语言简要实现这些类及及其属性,以及它们之间的关系。

    学校(School)主要有3大角色:学校(School),讲师(Teacher),学员(Student). 学校可以注册学员,统计有多少学员 讲师负责讲课 学生听课,提问,学习,交学费 Teacher ...

  2. python面向对象三大特性、类的约束、print带颜色输出及super补充

    面向对象三大特性.类的约束.print带颜色输出及super补充 简述: python面向对象的三大特性: 1.继承是一种创建新类的方式,在python中,新建的类可以继承一个或多个父类,父类又可称为 ...

  3. python 面向对象之封装与类与对象

    封装 一,引子 从封装本身的意思去理解,封装就好像是拿来一个麻袋,把小猫,小狗,小王八,小老虎一起装进麻袋,然后把麻袋封上口子.照这种逻辑看,封装='隐藏',这种理解是相当片面的 二,先看如何隐藏 在 ...

  4. python中类的嵌套_python类的嵌套

    广告关闭 腾讯云11.11云上盛惠 ,精选热门产品助力上云,云服务器首年88元起,买的越多返的越多,最高返5000元! 在.net和java语言中看到过嵌套类的实现,作为外部类一个局部工具还是很有用的 ...

  5. python游戏脚本实例-python实现的简单文本类游戏实例

    本文实例讲述了python实现的简单文本类游戏实现方法.分享给大家供大家参考.具体实现方法如下: ################################################### ...

  6. python buildin 中的一些类中为什么方法的内容都是pass?

    python buildin 中的一些类中为什么方法的内容都是pass? 文章目录: 一.看到的一些方法的定义都是pass 二.如何查看Python的源代码 python 的源代码是用C语言写的 一. ...

  7. python零碎知识(8):UserDict 类

    一.UserDict概述 UserDict 模块中的 UserDict 类是在python中经常使用的类,保存在Python 安装目录的 lib 目录下UserDict.py.其高仿字典(Dictio ...

  8. python——type()、metaclass元类和精简ORM框架

    1.type()函数 #type()函数既可以返回一个对象的类型,又可以创建出新的类型, # 比如,我们可以通过type()函数创建出Hello类,而无需通过class Hello(object).. ...

  9. python常用库 自动化办公类 —— PyPDF2(处理pdf文件)

    python常用库 自动化办公类 -- PyPDF2(处理pdf文件) 摘要 PyPDF库的安装 PyPDF库的常用功能 文字提取 合并pdf文件 旋转pdf页面 pdf文件加密 摘要 本文主要介绍了 ...

  10. 【Python面试】 列举Python中的标准异常类?

    往期面试题: 说说Python变量.函数.类的命名规则? 说说Python可变与不可变数据类型? 说说Python面向对象三大特性? 说说Python中有几种数据类型? 说说Python模块主要分哪三 ...

最新文章

  1. 2021年大数据Flink(三十六):​​​​​​​Table与SQL ​​​​​​案例三
  2. 手机AI、购物AI...还有哪个“AI+”被忽略了?
  3. fiash星空动画制作_三维动画制作的详细流程
  4. 敏捷开发第二阶段个人(二)
  5. MATLAB在数学建模中的应用(三)
  6. CodeForces798cMike and gcd problem
  7. SSM框架的搭建学习(1)---MyBatis的环境搭建
  8. jquery源码抽丝剥茧--把jquery最小化
  9. Debian中安装Vmware Tools
  10. Oracle StorageTek磁带库产品线或将终结
  11. OpenLayers 加载 百度 地图
  12. C++中deprecated笔记
  13. 计算机二级office知识框架,计算机二级Office:Excel模拟分析和图表知识点讲解
  14. 食堂总是拥挤不堪?解决用餐拥挤,教你一招
  15. 有啥能做水印的报表工具
  16. 文本情感分析实例(R语言)
  17. 余额重估(Revaluation Balances)相关设置和操作
  18. Advanced Installer16.9运行环境配置
  19. python web和java web区别_成都汇智动力-谈谈个人认为的JavaWeb开发与PythonWeb开发的区别...
  20. 解决: 利用 Xware 在 centos 上搭建远程下载器

热门文章

  1. Python标准库 urllib
  2. Equinox MANIFEST.MF 中文处理 Bug
  3. 使用sharepoint自带的文本编辑器1
  4. 野外帐篷露营避难有感
  5. java用户注册模块_用户注册登录模块设计方案报告.docx
  6. 关于触摸方向判断的bug
  7. Python中函数的用法
  8. JVM学习03-常用Java虚拟机参数
  9. 5.5使用Cucumber来测试
  10. 【渝粤教育】广东开放大学 知识产权法 形成性考核 (44)