文件名称:定义有可选参数的元类-华为云大数据中台架构分享
文件大小:5.68MB
文件格式:PDF
更新时间:2024-07-01 05:00:46
Python cookbook 中文 参考
9.15 定义有可选参数的元类 问题 你想定义一个元类,允许类定义时提供可选参数,这样可以控制或配置类型的 创建过程。 解决方案 在定义类的时候,Python 允许我们使用 ``metaclass``关键字参数来指定特定的 元类。 例如使用抽象基类: from abc import ABCMeta, abstractmethod class IStream(metaclass=ABCMeta): @abstractmethod def read(self, maxsize=None): pass @abstractmethod def write(self, data): pass 然而,在自定义元类中我们还可以提供其他的关键字参数,如下所示: class Spam(metaclass=MyMeta, debug=True, synchronize=True): pass