metaclass 相关问题

在面向对象的编程中,元类是一个类,其实例是类。正如普通类定义某些对象的行为一样,元类定义了某些类及其实例的行为。并非所有面向对象的编程语言都支持元类。

停止 Sphinx 执行缓存的类方法属性

我正在编写一个用于与数据集交互的包,并且代码看起来像 从 abc 导入 ABC、ABCMeta、抽象方法 从 functools 导入缓存 从 pathlib 导入路径 来自瓦...

回答 1 投票 0

如何在Python中使用自定义元类来装饰继承的方法?

我正在使用自定义元类来装饰类的方法。但是,它目前仅修饰直接在类中定义的方法,而不修饰从父类继承的方法。 我的课程是

回答 1 投票 0

自动将枚举成员的值设置为其名称

我一直在摆弄Python的枚举库并遇到了一个难题。在文档中,他们展示了自动编号枚举的示例,其中定义了某些内容: 类颜色(自动编号...

回答 3 投票 0

子类化`typing.TypeDict`

我浏览了 PEP-0589,我想知道为什么/如何在将其子类化时,typedDict 工作: A 类(TypedDict,total=False): x:整数 y:整数 具体来说,TypedDict 是一个函数...

回答 1 投票 0

在Python中执行类(元类实例)销毁代码

我们有一些 API 应该在每个 python 进程中关闭一次(例如 api.shutdown()),并且仅特定于控制器层次结构中的特定类(例如 ControllerA)(例如 Control...

回答 1 投票 0

通过元类更改实例的属性名称

我要做一个元类,它应该为我的类 CustomClass 的所有属性和方法添加前缀“custom_”,除了魔术方法之外。 这是代码: 类 CustomClass(元类=CustomMeta...

回答 1 投票 0

类方法对象如何工作?

我很难理解类方法对象在 Python 中的工作原理,特别是在元类和 __new__ 的上下文中。在我的特殊情况下,我想获取类方法的名称......

回答 1 投票 0

__call__ 来自元类影子 __init__ 的签名

我希望在下面的代码中,当我输入instance_of_A = A(时,假定参数的名称是init_argumentA而不是*meta_args,**meta_kwargs。但不幸的是,

回答 5 投票 0

__metaclass__ 不应该在 Python 中强制使用元类吗?

我一直在尝试了解Python中的元类。我明白了主要想法,但我似乎无法激活该机制。据我了解,您可以在构造时指定 M 作为元类...

回答 3 投票 0

如何在给定基础的情况下恢复类的 mro?

假设我们正在实现一个元类,在实例化类之前需要知道方法解析顺序。 类元(类型): def __new__(cls, 名称, 基础, 命名空间): 先生...

回答 2 投票 0

如何按照声明的顺序读取类属性?

我正在编写一个元类,它读取类属性并将它们存储在列表中,但我希望列表(cls.columns)尊重声明顺序(即:mycol2、mycol3、zut、cool、menfin、a in我的

回答 8 投票 0

如何在调用 __init__ 之前检查参数类型

我需要检查 __init__() 中的参数类型。我是这样做的: 类矩阵: def __init__(自身,矩阵): ”“” if type(matrix) != list 引发参数错误 ...

回答 1 投票 0

python 元类:在调用 `__set_name__` 方法后编辑命名空间?

假设我们用元类定义一个类。 在类主体中,分配实现 __set_name__ 的对象以将其自身注册到类的数据结构中。 可以编辑吗...

回答 1 投票 0

如何在 Python 元类中键入 __new__ 方法,以便 mypy 满意

我正在尝试在 Python 的元类中键入 __new__ 方法,以便它能让 mypy 满意。代码将是这样的(取自 pep-3115 - “Python 3000 中的元类”和 stri...

回答 1 投票 0

如何在Python中验证类属性?

我一直在尝试验证用户可以在框架样式设置中创建的类。 我可以通过以下方式确保子类中存在类属性: 从 abc 导入...

回答 3 投票 0

如何在 Python 中创建自己的“参数化”类型(如 `Optional[T]`)?

我想在 Python 中创建自己的参数化类型以用于类型提示: MaybeWrapped 类: # 魔法就在这里 T = 类型变量('T') 断言 MaybeWrapped[T] == Union[T, Tuple[T]] 别介意

回答 3 投票 0

创建继承自 ABCMeta 和 QObject 的元类

我正在 PySide6 中构建一个应用程序,其中涉及动态加载插件。为了促进这一点,我使用 ABCMeta 为插件接口定义一个自定义元类,我希望这个...

回答 1 投票 0

DJANGO - 元/变量 db_table 类

我想在我的元类中获取一个变量 类元: 抽象=真实 db_table = '自行车表' 托管 = 假 我想像上面那样从 self 获取一个变量:

回答 1 投票 0

如何在Python中使用元类插入的方法对类进行类型检查?

以下代码中元类添加了some_method: 从 abc 导入 ABC 从 abc 导入 ABCMeta 从输入导入类型 def some_method(cls, x: str) -> str: 返回f”结果...

回答 1 投票 0

根据元类类型检查子类

我有一组继承自元类的插件。元类的定义如下: 从 abc 导入 ABC,抽象方法 元阅读器类(ABC): def __init__(self, arg1, arg2, **kwargs): ...

回答 1 投票 0

© www.soinside.com 2019 - 2024. All rights reserved.