好的设计模式,可以使代码具有良好的可扩展性,并易于修改。单例模式是其中一种简单又特别的设计模式。

  单例模式:只有一个实例。适用在所有实例中封装的数据都相同时。可使用静态字段+静态方法的方式实现。

  

#--------------------------------------设计模式----------------------
# 单例模式实例:连接池
class ConnectionPool:

    __instance = None   # 连接池实例

    def __init__(self):       # 连接池实例信息
        self.ip = '1.1.1.1'
        self.port = 3306
        self.pwd = '123123'
        self.username = 'XXXX'
        # 去连接
        self.connection_list = [1,2,3,4,5,6,7,8]          # 与数据库的连接通道

    @staticmethod
    def get_instance():        # 单例模式,构建连接池
        if ConnectionPool.__instance:
            return ConnectionPool.__instance
        else:
            ConnectionPool.__instance = ConnectionPool()
            return ConnectionPool.__instance

    def get_connection(self):    # 随机选定一条连接通道
        import random
        i = random.randrange(1,9)
        return i

pool = ConnectionPool.get_instance()         # 获取连接池
ret = pool.get_connection()                 # 获取连接池中的连接
print(ret)