metaclass 相关问题

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

TypeError:元类“不带参数”

为什么我们为以下代码得到错误:StateMeta类:def __call __(* args,** kwargs):通过#end __call__#end StateMeta类State(metaclass = StateMeta):通过错误:...

回答 1 投票 0

[如何在仍然使用`class`关键字的同时覆盖构造函数? [重复]

创建类的两种著名方法如下所示:类Klass:通过Klass = type(“ Klass”,tuple(),dict())我想在仍使用类的同时重写构造函数(__call__)。 。

回答 1 投票 -2

____ metaclass__在Python 3中

在Python2.7中,此代码可以很好地工作,MetaTable中的__getattr__将运行。但是在Python 3中,它不起作用。类MetaTable(type):def __getattr __(cls,key):temp = key.split(“ __”)...

回答 1 投票 12

为什么python super()在ABCMETA类中没有参数就无法工作?

我在理解python3.6中abc.ABCMeta类中的函数super()行为时遇到问题。 class ParentClass():def test():返回1 @ six.add_metaclass(ABCMeta)类ChildClass(...

回答 1 投票 0

在python中使用attr模块和元类

[我正在尝试使用attr包来简单地创建一个具有属性和方法的元类,以便在Py 3的进一步的类定义中使用。我想使用attrs包,因为我有很多简单的方法...

回答 1 投票 0

如何使我的模式观察者与元类一起工作?

我想在我的class属性上设置一个模式观察器,我尝试使用@classmethod,但是它没有setter属性。 class dataframe():df =无@classmethod @property def weather(cls ......

回答 1 投票 0

为什么python metaclass在此代码中不起作用?

class My_meta(type):def hello(cls):print(“ hey”)class Just_a_class(metaclass = My_meta):通过a = Just_a_class()a.hello()上面的代码给出了:AttributeError:'Just_a_class'。 ..

回答 1 投票 0

通过重写__new__不起作用装饰类的方法?

我想我的装饰类的所有方法。我在这里写用于说明目的的样品小装饰。装饰:高清调试(FUNC):味精= FUNC .__ name__ @wraps(FUNC)进行...

回答 1 投票 1

基类列表中的赋值

在阅读输入模块源代码时,我注意到以下内容:class _SpecialForm(_Final,_Immutable,_root = True):...这里,赋值在基类列表中。之后,它已签入:...

回答 1 投票 0

Django重复模型定义/字段

这是我正在使用的:class a(models.Model):x = models.CharField()class b(a):pass这个问题是当创建b的实例时,也会创建a的实例,我......

回答 2 投票 1

元类的Pytest夹具

有没有一种优雅的方法来定义在类创建之前设置的fixture,以便元类可以使用它们?更精确,在我的用例中我有一个元类,根据...创建类。

回答 1 投票 1

如何在没有元类冲突的情况下对PyQt子类使用泛型类型?

我曾尝试使用sip包装器类型的abc.ABCMeta,当使用abc.ABC子类时,它运行良好。 class QABCMeta(wrappertype,ABCMeta):传递类WidgetBase(QWidget,metaclass = QABCMeta):......

回答 1 投票 7

python3元类的调用顺序

在尝试理解元类创建类实例的顺序时,我感到困惑。根据此图(源),我键入以下代码来验证它。 class Meta(type):def ...

回答 2 投票 4

使用ABCMeta和EnumMeta的抽象枚举类[重复]

简单示例目标是通过从abc.ABCMeta和enum.EnumMeta派生的元类创建抽象枚举类。例如:import abc import enum class ABCEnumMeta(abc.ABCMeta,...

回答 2 投票 2

如何在类中注入代码并在运行时为类字段赋值?

我有一个Batch Job规范文件(batch.spec),如下所示:python = <

回答 1 投票 -2

在Python中创建一个参数化类型,但使所有实例的子项为“超类型”

假设我有一个带有t属性的Python类型。我想创建一个“参数化元类型”,以便以下工作:类MySuperClass(类型):传递类MySubClass(MySuperClass):#...

回答 2 投票 6

Django的Meta类如何工作?

我正在使用Django,它允许人们通过使用类Meta为类添加额外的参数。 class FooModel(models.Model):... class Meta:...我在Python中找到的唯一东西......

回答 5 投票 153

为什么namedtuple模块不使用元类来创建nt类对象?

几个星期前,我花了一些时间调查collections.namedtuple模块。该模块使用一个工厂函数来填充动态数据(新的namedtuple类的名称,以及...

回答 4 投票 20

当父类需要声明它时,避免python子类中的类变量

我读到在类命名空间中创建变量然后在类构造函数中更改其值被认为是不好的做法。 (我的一个消息来源:SoftwareEngineering SE:它是好的......

回答 1 投票 2

Python - Metaclass装饰器 - 如何使用@classmethod

我有以下Python元类,它为每个类添加了一个deco_with_args装饰器:def deco_with_args(baz):def decorator(func):... return func return decorator class ...

回答 3 投票 0

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