Python类保持转义序列

时间:2017-12-29 11:55:07

标签: python class

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

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获取该类没有__init__方法的消息。

是否可以,我可以简单地忽略这个警告或者这里的pythonic方式是什么?

2 个答案:

答案 0 :(得分:2)

这将是在类中分配变量并在外部访问它们的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)

答案 1 :(得分:1)

从类创建对象时使用

__init__()方法。如果您不想创建任何对象,则无需定义它。但是,如果您只想使用它来分隔命名空间,您还可以将其移动到单独的模块。