fox111 发表于 2018-8-7 09:29:44

python中让打印有不同的颜色

  目的:使用python时,改变在终端里的输出颜色和样式。
  环境:ubuntu 16.4python 3.5.2
  情景:在写小的脚本时,我们如果不需要输出到文件,也许只是想在终端中显示信息,这时可以尝试改变输出文字的颜色和样式,突出显示或者只是想秀一下。
  查了一点资料:
  终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。
  转义序列是以 ESC 开头,可以用 \033 完成相同的工作(ESC 的 ASCII 码用十进制表示就是 27, = 用八进制表示的 33)。
  格式为:
  \033[显示方式;前景色;背景色m
  这里有3个参数:
  1)
  显示方式:0(默认值)、1(高亮)、22(非粗体)、4(下划线)、24(非下划线)、
  5(闪烁)、25(非闪烁)、7(反显)、27(非反显)
  2)
  前景色:30(黑色)、31(红色)、32(绿色)、 33(黄色)、34(蓝色)、35(洋
  红)、36(青色)、37(白色)
  3)
  背景色:40(黑色)、41(红色)、42(绿色)、 43(黄色)、44(蓝色)、45(洋
  红)、46(青色)、47(白色)
  比如:
  \033[0m 使用默认的样式,省略了前后色。
  \033[1;32;40m 绿色
  033[1;31;40m 红色
  举例:
  print('\033[1;31;40m%s\033[0m' % '输出红色字符')
  理解为:变更设置后,再还原设置。
  参考链接:marklogic邮件回复
页: [1]
查看完整版本: python中让打印有不同的颜色