Python类保留转义序列

Python类保留转义序列,python,class,Python,Class,我创建了一个简单的类来保持转义顺序: class Color: HEAD = '\033[95m' OKBL = '\033[94m' OKGR = '\033[92m' FAIL = '\033[93m' WARN = '\033[91m' ENDC = '\033[0m' BOLD = '\033[1m' UNDR = '\033[4m' 要在控制台输出中使用它们,请执行以下操作: print(Color.WARN + "Ou

我创建了一个简单的类来保持转义顺序:

class Color:
    HEAD = '\033[95m'
    OKBL = '\033[94m'
    OKGR = '\033[92m'
    FAIL = '\033[93m'
    WARN = '\033[91m'
    ENDC = '\033[0m'
    BOLD = '\033[1m'
    UNDR = '\033[4m'
要在控制台输出中使用它们,请执行以下操作:

print(Color.WARN + "Output file will be overwritten!" + Color.ENDC)
现在从linter处获得消息,该类没有
\uuuu init\uuu
方法


这样可以吗?我可以忽略这个警告,或者这里的pythonic方式是什么?

\uuuu init\uuu()
方法在从类创建对象时使用。如果不想创建任何对象,则无需对其进行定义。但是,如果您只想使用它来分隔名称空间,您也可以简单地将其移动到单独的模块。

这将是一种pythonic方式,可以在类内部分配变量并在外部访问它们

class Color:
  def __init__(self):
    self.HEAD = '\033[95m'
    self.OKBL = '\033[94m'
    self.OKGR = '\033[92m'
    self.FAIL = '\033[93m'
    self.WARN = '\033[91m'
    self.ENDC = '\033[0m'
    self.BOLD = '\033[1m'
    self.UNDR = '\033[4m'

color = Color()
print(color.WARN + "Output file will be overwritten!" + color.ENDC)

我不能重现这个错误。你确定代码中没有其他内容吗?在Python-3.5.3和Python-2.7.13I中都进行了测试,但也没有得到任何错误,请指定重现步骤。这不是错误,是样式警告。您可以将其改为。如果您仅将类用于类属性,则可以忽略警告。使用字典可能会更像Python,但我是否正确地认为,将其移动到单独的模块只会有一个目的——消除linter的警告?而不仅仅是。这是以干净的方式组织代码的另一种方式。