metaclass

    1

    2答えて

    私がPythonオブジェクト指向プログラミングについて理解しているのは、関数呼び出しのようなクラスのインスタンスを使用する場合に呼び出される__call__メソッドがクラスに定義されている場合です。例: class Employee: def __init__(self,name,sal): self.name = name self.salary = sal

    1

    5答えて

    私はPython Webアプリケーションを持っているので、Webページを処理する一般的なクラスや関数を定義し、特定のページインスタンスに対してより特定のクラスから呼び出す。 エラー: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of a

    2

    1答えて

    Javaでは、抽象クラスにすることでクラスのインスタンス化を防ぐことができます。私はPythonが同じように動作すると思った。しかし、私の驚きに、私は抽象クラスのオブジェクトを作成することが分かっ: from abc import ABCMeta class Foo(metaclass=ABCMeta): pass Foo() はなぜPythonはこれを許可しないとどのように私は

    0

    1答えて

    私はPythonとDjangoとシリアライザについて学ぶのは初めてです。私はシリアライザクラスを定義する際に、内部にネストされたメタクラスが必要であることを確認しました。私はこのメタクラスのコンセプトに賛成できないので、私はそれについて調べて、メタクラスはクラスがインスタンスであるクラスであることを発見しました。それを読んだ後でさえ、私は混乱しています。外側のシリアライザクラスは内部メタクラスのイ

    0

    1答えて

    私はかなり簡単な問題だと思っていますが、満足のいく答えを見つけることができませんでした。簡単に言うと、それぞれの子クラスに論理を追加することなく、親クラスの子クラスに対するコントラクトを強制したいのです。以下のコード例: class A(object): @abc.abstractmethod def do_thing(self, input): raise No

    0

    1答えて

    私はgraphene.ObjectTypeサブクラスのメタクラスを作成しようとしています。私の主な目的は、名前を含む文字列のリストからクラスの属性(つまりGraphene Objectのフィールド)を作成することです。 たとえば、このリストは​​ 、私のクラスAttack必見の何かが、このようなこと: class Attack(graphene.ObjectType): quantity

    0

    1答えて

    JSONObjectのメタクラスをGroovyで修正して、通常のGroovyマップのようにできるだけ動作させようとしています。メタクラスにメソッドを実装すると、以下の例のJSONObject.metaClass.sizeのような単純なメソッドがあります。 JSONObjectにはlength()メソッドがあり、新しいsize()メソッドまで配線していますが、いくつかのメソッドには特別な意味がありま

    9

    1答えて

    type.__setattr__は、クラス、基本的にはメタクラスのインスタンスに使用されます。一方、object.__setattr__は、クラスのインスタンスに使用されます。これは完全に理解されています。 aがある と仮定します。 私は2つの方法の間に有意な差は見ない、少なくともPythonのレベルで、私は2つは私が間違っているなら、私を修正し、属性割り当てのために同じ手順を使用気づきますユーザ

    2

    1答えて

    私はクラスオブジェクトを持っています。clsです。私はそのメタクラスを知りたい。これはどうすればいいですか? (私はその親クラスを知りたいと思った場合、私はcls.__mro__を行うだろうメタクラスを取得するには、このようなものがあります。?)

    0

    2答えて

    メタクラスを使用して「連鎖」を行うために親クラスに子クラスを自動的に追加することを考えていました。しかし、親クラスからこれらの属性を継承すると、事が上手くいく。これを避ける良い方法はありますか? class MetaError(type): def __init__(cls, name, bases, attrs): for base in bases: set