使用函数属性作为返回值

这个问题在这里已经有了答案:

  • 我如何在Python中表示'Enum'? 43个答案

  • 虽然你可以,但我不会,特别是现在Python有一个3.4的Enum类型,它已被回溯。

    上面的例子可能看起来像一个Enum

    class Size(Enum):
    
        small = 1
        medium = 2
        large = 3
    
        @classmethod
        def classify(cls, number):
            if number < 10:
                return cls.small
            elif number < 20:
                return cls.medium
            else:
                return cls.large
    

    正在使用:

    --> Size.classify(15)
    <Size.medium: 2>
    

    namedtuple ,也许?

    >>> from collections import namedtuple
    >>> 
    >>> SizeSpec = namedtuple('SizeSpec', ['small', 'medium', 'large'])
    >>> 
    >>> size = SizeSpec(small=1, medium=2, large=3)
    >>> 
    >>> size.small
    1
    >>> size.medium
    2
    >>> size.large
    3
    
    链接地址: http://www.djcxy.com/p/91741.html

    上一篇: using function attributes as return values

    下一篇: Enum class in python