Python单例模式
Posted 小白一生
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了Python单例模式相关的知识,希望对你有一定的参考价值。
单例
class MusicPlayer(object):
instance = None
def __new__(cls, *args, **kwargs):
if cls.instance is not None:
return cls.instance
else:
cls.instance = super().__new__(cls)
return cls.instance
player1 = MusicPlayer()
print(player1)
player2 = MusicPlayer()
print(player2)
单例初始化一次
class MusicPlayer(object):
instance = None
init_flag = False
def __new__(cls, *args, **kwargs):
if cls.instance is not None:
return cls.instance
else:
return super().__new__(cls)
def __init__(self):
if MusicPlayer.init_flag:
return MusicPlayer.instance
else:
print("初始化播放器")
MusicPlayer.init_flag = True
player1 = MusicPlayer()
print(player1)
player2 = MusicPlayer()
print(player2)
以上是关于Python单例模式的主要内容,如果未能解决你的问题,请参考以下文章