from colors import color __all__ = ["Log", "log"] class Log(object): LEVEL_WARN = 3 LEVEL_INFO = 2 LEVEL_DEBUG = 1 def __init__(self): self.level = Log.LEVEL_INFO def warn(self, msg): self._p(Log.LEVEL_WARN, color(msg, "orange")) def info(self, msg): self._p(Log.LEVEL_INFO, color(msg, "white")) def summary(self, msg): self._p(Log.LEVEL_INFO, color(msg, "white")) def debug(self, msg): self._p(Log.LEVEL_DEBUG, color(msg, "grey")) def _p(self, level, msg): if level >= self.level: print(msg) def set_level(self, level): if level == "warn": self.level = Log.LEVEL_WARN elif level == "info": self.level = Log.LEVEL_INFO elif level == "debug": self.level = Log.LEVEL_DEBUG else: self.level = Log.LEVEL_DEBUG log = Log()