metaclass

    3熱度

    1回答

    我有一個使用SQLAlchemy的現有工作Flask應用程序。這個應用程序中的幾個模型/表具有存儲原始HTML的列,並且我想在列的setter中注入一個函數,以便傳入的原始html得到「清理」。我想在模型中這樣做,所以我不需要通過表單或路徑代碼來「清理這些數據」。 我現在已經做到這一點,像這樣: from application import db, clean_the_data from sq

    1熱度

    1回答

    我有幾個PFObject子類用作模型,我想在他們的循環中調用Parse的registerSubclass()。下面是我目前: let subclasses: [PFObject.Type] = [ Calendar.self, Meeting.self, UserSetting.self, Setting.self ] for s

    0熱度

    1回答

    我有頭痛試圖瞭解在metaclass類型,object類和class類型之間退出的循環關係。 我想了解python如何使一切都成爲object.is它是因爲所有東西都是metaclass類型的一個實例,還是因爲一切都是對象類的子類。 如果它因爲是對象類的子類,是否意味着如果類對象被命名爲類pyobj。這是否意味着Python中的所有內容都以pyobj開頭? 我知道元類創建的對象是類型/類,然後這些

    1熱度

    3回答

    有了MATLAB,可以動態屬性添加到一個類的實例是這樣的: % Define a class supporting for dynamic properties classdef DynamicClass < dynamicprops end % Add a dynamic property named 'toto' to some instance c = DynamicClass()

    3熱度

    2回答

    一個簡單的例子: class A: attr = {'a': 1} class B(A): attr = {'b': 2} #overrides A.attr 我想是聚集字典的方法。我只能想到這些選項: 忽略那種令人不安的感覺並且手工複製所有東西。 手動添加的字典: class B(a): attr = dict(list(six.iteritems(A.at

    1熱度

    3回答

    在下面的代碼中,模塊是擴展的,這意味着hash_initialized方法被視爲類方法或特徵類的實例方法。這是我們需要的,因爲在本徵類的上下文中調用了hash_initialized。 我不明白的是,如果模塊的上下文是eigen類,那麼define_method應該創建一個名爲「初始化」特徵類的實例方法,或者換句話說,類Cheese的類方法。我們不需要實例方法「初始化」嗎? module Hash

    1熱度

    1回答

    這個問題很難表達出來。我希望標題能正確捕捉它。 我在尋找: class Parent(): x = "P" class ChildA(Parent): x = "A" class ChildB(Parent): # not setting x pass 有了這個,下面應該工作完全所見: >>> Parent.x 'P' >>> ChildA.

    -4熱度

    1回答

    我創建一個子類,但我有使它從父類繼承的困難: def ParentClass(object): def __init__(self,num): self.num = num self.get_soup() def get_soup(self): self.soup = 'soup' return self.soup def

    0熱度

    1回答

    我見過'nmspc'用於Python中元類的__init__和__new__方法。 'nmspc'代表什麼? class SimpleMeta1(type): def __init__(cls, name, bases, nmspc): super(SimpleMeta1, cls).__init__(name, bases, nmspc) cls.uses_me

    1熱度

    1回答

    包含某些值的變量self.x只能在子類B中創建。 這個變量用在父類A中,爲了確保我不會忘記實現它,我使用了@abstractproperty。 此外,爲避免不必要地多次計算big_method(),我將值存儲在self.__x中,並返回該值。 import abc class A(metaclass=abc.ABCMeta): @abc.abstractproperty