如何访问Python3中基类中派生类的类属性



我想在基类(FooBase)中使用派生类(Foo)的类属性做一些事情。我想用Python3来实现这一点。

class BaseFoo:
   #felder = [] doesn't work
   def test():
      print(__class__.felder)
class Foo(BaseFoo):
   felder = ['eins', 'zwei', 'yep']

if __name__ ==  '__main__':
    Foo.test()

也许对此有不同的方法?

您需要使test成为一个类方法,并为它提供一个可以用来访问该类的参数;按照惯例,这个arg被命名为CCD_ 4。

class BaseFoo:
    @classmethod
    def test(cls):
        print(cls.felder)
class Foo(BaseFoo):
    felder = ['eins', 'zwei', 'yep']

if __name__ ==  '__main__':
    Foo.test()

输出

['eins', 'zwei', 'yep']

相关内容

  • 没有找到相关文章

最新更新