metaclass

    11熱度

    2回答

    如果實例變量屬於一個類的實例,那麼類變量將屬於元類的一個實例,我應該這樣想。但是我對Objective-C元類的經驗告訴我這不太可能。 我想知道class_getClassVariable做什麼,而不是class_getInstanceVariable,以及爲什麼在運行時沒有class_setClassVariable。

    30熱度

    8回答

    不能以任何其他方式使用元類可以做些什麼? 亞歷克斯馬爾泰利告訴說,有任務不能在這裏沒有元類實現Python metaclasses vs class decorators 我想知道哪些是?

    1熱度

    1回答

    我在我的Grails插件中使用了幾個類別。例如, class Foo { static foo(ClassA a,Object someArg) { ... } static bar(ClassB b,Object... someArgs) { ... } } 我在尋找添加這些方法來元類,這樣我就不必使用分類等級,並且可以只調用它們作爲實例方法的最佳途徑。例如, aIns

    2熱度

    1回答

    在下面轉載的this question中給出的示例枚舉代碼中,爲什麼TOKEN包含元類EnumerationType中的__contains__和__repr__的實現? from ctypes import * class EnumerationType(type(c_uint)): def __new__(metacls, name, bases, dict): if

    2熱度

    3回答

    編輯:請注意,這是一個在生產代碼中做的真正不好的想法。這對我來說只是一件有趣的事情。不要在家裏這樣做! 是否有可能在Python中修改整個程序(解釋器)的__metaclass__變量? 這個簡單的例子是工作: class ChattyType(type): def __init__(cls, name, bases, dct): print "Class init", na

    16熱度

    1回答

    在Python 3.1,有一個新的內置功能,我沒有在builtins模塊中知道: __build_class__(...) __build_class__(func, name, *bases, metaclass=None, **kwds) -> class Internal helper function used by the class statement. 這是

    25熱度

    1回答

    我一直在試圖理解python metaclasses,所以一直在經歷一些示例代碼。據我瞭解,Python元類可以是任何可調用的。所以,我有我的元類像 def metacls(clsName, bases, atts): .... return type(clsName, bases, atts) 不過,我看到很多人寫自己的下列方式的元類: class Metacls(typ

    2熱度

    4回答

    我想修改Python中的所有類。例如str和int以及像Person(object)這樣的其他類。 我想給它們添加一個屬性並改變它的方法的工作方式。 這是最好的方法嗎?元類?

    3熱度

    4回答

    元類我有兩個問題converning元類和多重繼承。首先是:爲什麼我得到類Derived的TypeError,但不是Derived2? class Metaclass(type): pass class Klass(object): __metaclass__ = Metaclass #class Derived(object, Klass): pass # if I uncomm

    37熱度

    4回答

    我試着今天早些時候繼承了threading.Condition,但它沒有成功。以下是我嘗試子類化線程時Python解釋器的輸出.Condition類: >>> import threading >>> class ThisWontWork(threading.Condition): ... pass ... Traceback (most recent call last):