周志洋

个人站

持续学习 才能不被淘汰


Python进阶-元类编程

元类基础

class SingletonMeta(type):
   _instances = {}
   
   def __call__(cls, *args, **kwargs):
       if cls not in cls._instances:
           cls._instances[cls] = super().__call__(*args, **kwargs)
       return cls._instances[cls]

class Singleton(metaclass=SingletonMeta):
   pass

类装饰器

def add_method(cls):
   def new_method(self):
       return "新方法"
   cls.new_method = new_method
   return cls

@add_method
class MyClass:
   pass


转载请注明:周志洋的博客 » Python进阶-元类编程

打赏一个呗

取消

感谢您的支持,我会继续努力的!

扫码支持
扫码支持
扫码打赏,你说多少就多少

打开支付宝扫一扫,即可进行扫码打赏哦