【发布时间】:2020-01-12 08:24:18
【问题描述】:
是否可以从python3中的类静态变量访问类对象或其内部类对象?
class OuterClass:
all_subclasses = {
# is it possible to access the OuterClass from a class static variable
'innerclass1': OuterClass.InnerClass1
}
@classmethod
isInnerClass(cls, identifier: str):
return identifier.lower() in cls.all_subclasses
class InnerClass1:
def __init__(self):
pass
如果没有,有什么替代方法?
【问题讨论】:
-
如果你在
all_subclasses之前定义了InnerClass1,你可以直接用InnerClass1引用它。你不能在它自己的定义中引用OuterClass,因为它还不存在。 -
@PatrickHaugh:你是对的。 Python是解释语言,我对编译语言感到困惑。如果你想把它作为答案,我可以接受它是正确的。
标签: python-3.x inner-classes class-variables