引用类变量而不在Python中创建实例

2024-10-01 05:06:54 发布

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

我正在编写一个类,它基本上是一个数据结构,用于保存状态代码和与每个状态代码相关的dict。我想调用一个方法,提供一个数字状态代码,然后取回一个字典。在

class StatusCode(object):
    def __init__(self):
        self.codes  = {  0: { 'flag': "QEX_OK",      'message': "job successful"                                          },
                         1: { 'flag': "QEX_CMDLINE", 'message': "general cmd line syntax or semantic error"               }
             }
    @staticmethod
    def get_code(code):
        return self.codes[code]

我如何才能正确实现这一点?在

太多了。在


Tags: 方法代码self数据结构message字典状态def
2条回答

使用@classmethod

class StatusCode(object):
    codes  = {
            0: { 'flag': "QEX_OK",      'message': "job successful"                           },
            1: { 'flag': "QEX_CMDLINE", 'message': "general cmd line syntax or semantic error"},
            }

    @classmethod
    def get_code(cls, code):
        return cls.codes[code]

怎么样:

class StatusCode(object):
    codes  = {0: { 'flag': "QEX_OK",      'message': "job successful"                                          },
              1: { 'flag': "QEX_CMDLINE", 'message': "general cmd line syntax or semantic error"               }
             }

    @staticmethod
    def get_code(code):
        return StatusCode.codes[code]

print StatusCode.get_code(1)

相关问题 更多 >