PyCharm: 根据输出更改控制台中文本的颜色

PyCharm: Change color of text in Console based on output

我创建了一个特殊的 print() 函数来模拟日志记录的工作方式,但仅限于控制台。我希望这些 Print() 语句的文本输出颜色根据输出而改变。

以下是来自控制台的几行示例:

  • 2021-12-24 14:49:07 | DEBUG | - Campaign "Test" budget is 250 / 0.
  • 2021-12-24 14:49:07 | DEBUG | - Getting sending data for campaign's 2 audiences...
  • 2021-12-24 14:49:07 | INFO | - Randomly chose campaign "Test".
  • 2021-12-24 14:49:07 | INFO | - Randomly chose audience "etest".
  • 2021-12-24 14:49:07 | WARN | - Campaign is missing "Sending Timezone" .

是否可以根据文本更改控制台中每一行的颜色?

例如,将带有“WARN”的行显示为橙色;等...

colorama 可能会有帮助。

示例:

from colorama import init, Fore, Style
init()

def print_log(info, level):
    if(level == "WARN"):
        print(Fore.YELLOW + "[WARN] " + info)
        print(Style.RESET_ALL) # Don't forget to change back to normal

print_log("This is a warning", "WARN")

实际上,Fore.YELLOW发送ANSI sequences到控制台,可以改变控制台文本的颜色。