【问题标题】:How to acess variable from subclass that is in main class?如何从主类中的子类访问变量?
【发布时间】:2017-04-11 19:01:12
【问题描述】:
class A:
    x = 'variable'
    class B:
        #how to access variable X from class A

我刚刚开始学习 OOP,并试图弄清楚如何在实践中使用它。

【问题讨论】:

  • 为什么要在另一个类中定义一个类?
  • 我不能这样做吗?
  • 我想这是可能的,但我想不出你为什么要这样做。如果你想学习继承,这不是它的做法。

标签: python class oop


【解决方案1】:

简短的回答:这是不可能的(或者如果是的话,这并不容易)因为只要class A: 开始的块还没有完成,你就不能访问A

但是您可以将其定义为属性:

class A:
    x = 'variable'
    class B:
        @property
        def x(self):
            return A.x

方法和属性中的代码在调用时执行,因此调用发生在定义class A 之后。所以你可以使用它:

>>> A.B().x
'variable'

但是,如果您“刚开始学习 OOP”,我强烈建议您不要使用嵌套类。尝试关注一些真正的 OOP 主题,例如 inheritance

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-08-09
    • 2013-01-16
    • 2018-08-15
    • 2012-04-09
    • 2013-10-25
    相关资源
    最近更新 更多