- 当所有实例封装的数据都相同时
- 只有一个实例
- 静态方法 + 静态字段
# 数据库连接的例子 class ConnectionPool: __instance = None def __init__(self): self.ip = "198.162.1.1" self.port = 3306 self.pwd = "123456" self.usr = "xxxx" # 去连接 self.conn_list = [1,2,3,4,5,6,7,8,9,10] @staticmethod def get_instance(): if ConnectionPool.__instance: return ConnectionPool.__instance else: # 创建一个对象,并保存在__instance ConnectionPool.__instance = ConnectionPool() return ConnectionPool.__instance def get_connection(self): #获取连接 import random r = random.randrange(1, 11) return r obj1 = ConnectionPool.get_instance() print(obj1) obj2 = ConnectionPool.get_instance() print(obj2) p = obj1. get_connection() print(p)
python 进阶 单例模式
©著作权归作者所有,转载或内容合作请联系作者
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
【社区内容提示】社区部分内容疑似由AI辅助生成,浏览时请结合常识与多方信息审慎甄别。
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。
相关阅读更多精彩内容
- 写在前面的话 代码中的# > 表示的是输出结果 输入 使用input()函数 用法 注意input函数输出的均是字...