默认情况下从模块导出枚举类

时间:2018-08-09 07:15:55

标签: python python-3.x pycharm

我在班级中声明了一个枚举类,如下所示。

xx模块

class X(object):
    class my_enum(Enum):
        a = 1
        b = 2

    def test (self, p1=my_enum.a):
        print(p1)

我的模块:

from xx import X
o = X(X.my_enum.a)

问题在于pycharm工具提示显示self, p1=my_enum.a

当我如下编写以获取正确的工具提示时,它为LabelledUI.X.p1提供了未解决的参考错误:

xx模块

class X(object):
    class my_enum(Enum):
        a = 1
        b = 2

    def test (self, X.p1=my_enum.a):
        print(p1)

现在我可以从包含的类中创建枚举类,但这将需要一个额外的import语句,我试图避免减少用户的工作量。

xx模块

class my_enum(Enum):
        a = 1
        b = 2


class X(object):
    def test (self, X.p1=my_enum.a):
        print(p1)

我的模块:

from xx import X, my_enum
o = X(X.my_enum.a)

关于如何以用户工具提示读取正确的枚举类而无需用户添加额外的导入语句的方式创建任何建议?

默认情况下,有什么方法可以导出此枚举,而无需用户执行from xx import *

0 个答案:

没有答案