zoukankan      html  css  js  c++  java
  • Python如何输出带颜色的文字方法

     我们在使用python运维与开发的过程中,经常需要打印显示各种信息。海量的信息堆砌在控制台中,就会导致各种信息都显示在一起,降低了重要信息的可读性。这时候,如果能给重要的信息加上差异的字体颜色,那么就会更加显眼,增加使用者可阅读性。 

      以前看别人写代码总是出现"/033[1;31m..................../033[0m"类似出现,以为颜色输出必须"/033[1;31m“开头,” /033[0m" 结尾构成一组,其实不然。实际"/033[1;31m..................../033[0m"意思表示“....................“引号里的内容显示打印一种颜色,结尾如果有输入的话显示另外一种颜色打印。

      例如我们先写一个简单的要求用户输入的例子来了解一下:

      

    info = input("Please  Introduce yourself: ")
    print('33[1;33mWe asked him to introduce himself first.He said " %s ."33[3;31m' %info)
    print('这行是上一行结尾的颜色输出效果 ')
    View Code

      效果如图:

      如果只需要一种颜色我们就可以简单一点:  

    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    print('33[0m这是显示方式0')
    print('33[1m这是显示方式1')
    print('33[4m这是显示方式4')
    print('33[5m这是显示方式5')
    print('33[7m这是显示方式7')
    print('33[8m这是显示方式8')
    print('33[30m这是前景色0')
    print('33[31m这是前景色1')
    print('33[32m这是前景色2')
    print('33[33m这是前景色3')
    print('33[34m这是前景色4')
    print('33[35m这是前景色5')
    print('33[36m这是前景色6')
    print('33[37m这是前景色7')
    print('33[40m这是背景色0')
    print('33[41m这是背景色1')
    print('33[42m这是背景色2')
    print('33[43m这是背景色3')
    print('33[44m这是背景色4')
    print('33[45m这是背景色5')
    print('33[46m这是背景色6')
    print('33[47m这是背景色7')
    View Code

     Pytharm效果如图:

      书写格式,和相关说明如下: 

    说明:
    前景色         背景色           颜色
    ---------------------------------------
    30                40              黑色
    31                41              红色
    32                42              绿色
    33                43              黃色
    34                44              蓝色
    35                45              洋红
    36                46              青色
    37                47              白色
    显示方式               意义
    ----------------------------------
    0                    终端默认设置
    1                    高亮显示
    22           非高亮显示
    4 使用下划线
    24           去下划线
    5 闪烁
    25           去闪烁
    7 反白显示
    27           非反显
    8 不可见
    28           可见 例:
    033[1;32;41m #---1-高亮显示 32-前景色绿色 40-背景色红色--- 33[0m #---采用终端默认设置,即缺省颜色---

    *具体格式*:

    设置颜色开始 :33[显示方式;前景色;背景色m    
    注:';'前后的三个参数:显示方式,前景色,背景色是可选参数,可以只写其中的某一个或者某两个;由于表示三个参数不同含义的数值都是唯一没有重复的,所以三个参数的书写先后顺序没有固定要求,系统都可识别;
    建议按照默认的格式规范书写
      
    实现过程:
     终端的字符颜色是用转义序列控制的,是文本模式下的系统显示功能,和具体的语言无关。转义序列是以ESC开头,即用33来完成(ESC的ASCII码用十进制表示是27,用八进制表示就是033)
     数值表示的参数含义:
     显示方式: 0()、1()、22()、4()、24()、 5()、25()、7()、27(、8(、28(
     前景色: 30()、31
    、32、 33、34、35、36、37(
     背景色: 40
    、41、42、 43、44、45、46、47(
     
     实例
    
    
    #!/usr/bin/env python
    #-*- coding:utf-8 -*-
    print('33[1;31;40m')     #下一目标输出背景为黑色,颜色红色高亮显示
    print('*' * 50)
    print('33[7;31m错误次数超限,用户已被永久锁定,请联系管理员!33[1;31;40m')  #字体颜色红色反白处理
    print('*' * 50)
    print('33[0m')
    
    

     效果

     

     


  • 相关阅读:
    算法学习笔记: 珂朵莉树
    算法学习笔记:2SAT
    0x62 图论最小生成树
    Codeforces Round #632 (Div. 2) C. Eugene and an array(尺取法/前缀和)
    BZOJ1912 异象石(LCA/DFS序/set)
    (六1)Firefox插件安装
    (六2)八种定位方式为了查找元素
    (六3)从查找元素到操作元素
    【OSI】网络协议模型
    读《Wireshark网络分析就这么简单》读书笔记
  • 原文地址:https://www.cnblogs.com/easypython/p/9084426.html
Copyright © 2011-2022 走看看