metaclass

    1熱度

    5回答

    我有一個Python Web應用程序,我想定義一個通用的類或函數來處理網頁,並從特定的頁面實例的更具體的類中調用它。 錯誤: metaclass conflict: the metaclass of a derived class must be a (non-strict) subclass of the metaclasses of all its bases 我已經檢查了所有的StackOv

    0熱度

    1回答

    給定一組列名及其類型,目標是 實例化一個表和相應的映射類。 它與此處發佈的問題有關:Dynamic Class Creation in SQLAlchemy。 到目前爲止,我有以下幾點: table = Table(tbl, metadata, *(Column(col, ctype, primary_key=pk, index=idx) for col, ctype

    2熱度

    2回答

    我正在寫一個包含幾個嵌套類小Python應用程序,如下面的例子: class SuperBar(object): pass class Foo(object): NAME = 'this is foo' class Bar(SuperBar): MSG = 'this is how Bar handle stuff' class Anot

    -4熱度

    1回答

    class UpperAttrMetaclass(type): var = "test" def __new__(upperattr_metaclass, future_class_name, future_class_parents, future_class_attr): print("hello world") uppercas

    0熱度

    1回答

    我有我認爲是一個非常簡單的問題,但一直沒能找到滿意的答案。簡而言之,我想在父級的子類上執行合約,而不向每個子類添加邏輯。下面的代碼示例: class A(object): @abc.abstractmethod def do_thing(self, input): raise NotImplementedError class A1(A): def

    0熱度

    1回答

    我有一個元類和和類,都使用__getattribute__攔截屬性調用。他們是這樣的: class B(type): def __getattribute__ (self, name) : print(f'hello {self}') return super().__getattribute__(name) class C(metaclass=B):

    0熱度

    1回答

    看看下面的例子 class Base(type): def __init__(cls, name, bases, dict_): print 'Base.__init__() with cls %s, name %s...' % (cls, name,) type.__init__(cls, name, bases, dict_) M = Base('M',

    0熱度

    1回答

    我試圖理解元類。 我已經讀過this answer,我試圖使用自定義__call__這樣的: #!/usr/bin/env python3 class MetaTest(type): def __call__(cls, *args, **kwargs): print("MetaTest.__call__ called.")

    2熱度

    1回答

    我在嘗試添加帶有元類的mixin到基類爲QWidget的類時出現問題。我知道PyQt5 supports cooperative multiple inheritance,如果我的MixIn類沒有元類,那麼事情工作正常。但是,如果它有一個元類 - 無論是通過QWidgets共享pyqtWrapperType元類或派生元類的話,我收到以下錯誤: Process finished with exit

    3熱度

    1回答

    嗨Stackoverflow社區 我一直在試圖瞭解Django(和W's的Stream字段)如何在引擎蓋下工作。這樣做我瞭解了元類,並相信能處理這個原則。這就是說,SIX究竟如何執行with_metaclass函數對我來說仍然有些模糊。下面是代碼接着一個具體問題: models.py class BlogPage(Page): blogElement = StreamField([