python类在嵌套类中的可见性

2024-04-20 09:23:21 发布

您现在位置:Python中文网/ 问答频道 /正文

如果我有这样的代码:

from enum import Enum

class MainClass:
    class Options(Enum):
        OPTION1=1
        OPTION2=2
        OPTION3=3
    class InternalOperation:
        def function1(self, o):
            if o == Options.OPTION1:
                x=0
                ......
       function1= staticmethod(function1)

我很难做到这一点,不知道是否有可能使枚举类可见的第二个类内的主类和如何


Tags: 代码fromimportselfdefenumclassoptions
1条回答
网友
1楼 · 发布于 2024-04-20 09:23:21

您需要显式指定外部类MainClass.Options.OPTION1

from enum import Enum

class MainClass:
    class Options(Enum):
        OPTION1=1
        OPTION2=2
        OPTION3=3
    class InternalOperation:
        def function1(self, o):
            if o == MainClass.Options.OPTION1:
                x= 0

如果使用self作为第一个参数,请不要将其设为静态方法

相关问题 更多 >