python实现控制台输出彩色字体

时间:2022-07-28
本文章向大家介绍python实现控制台输出彩色字体,主要内容包括其使用实例、应用技巧、基本知识点总结和需要注意事项,具有一定的参考价值,需要的朋友可以参考一下。

python控制台输出彩色字体,供大家参考,具体内容如下

import ctypes, sys

STD_INPUT_HANDLE = -10
STD_OUTPUT_HANDLE = -11
STD_ERROR_HANDLE = -12

# 字体颜色定义 text colors
FOREGROUND_BLUE = 0x09 # blue.
FOREGROUND_GREEN = 0x0a # green.
FOREGROUND_RED = 0x0c # red.
FOREGROUND_YELLOW = 0x0e # yellow.

# 背景颜色定义 background colors
BACKGROUND_YELLOW = 0xe0 # yellow.

# get handle
std_out_handle = ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)


def set_cmd_text_color(color, handle=std_out_handle):
 Bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color)
 return Bool


# reset white
def resetColor():
 set_cmd_text_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)


# green
def printGreen(mess):
 set_cmd_text_color(FOREGROUND_GREEN)
 sys.stdout.write(mess + 'n')
 resetColor()


# red
def printRed(mess):
 set_cmd_text_color(FOREGROUND_RED)
 sys.stdout.write(mess + 'n')
 resetColor()


# yellow
def printYellow(mess):
 set_cmd_text_color(FOREGROUND_YELLOW)
 sys.stdout.write(mess + 'n')
 resetColor()


# white bkground and black text
def printYellowRed(mess):
 set_cmd_text_color(BACKGROUND_YELLOW | FOREGROUND_RED)
 sys.stdout.write(mess + 'n')
 resetColor()

使用

printGreen("你好,世界!")

顺便把图形放出来,供大家使用

replyContent = u'''' 
    _
    ( _      ___
    .-"`"(    _.""` `"-.
    /  ` `-._  _.-"   `__
   6 6)  `-.__.-'     `",
   /           `;-`
   /  ,          |
   () / /`         |
   `---`"~``         |
              |
           /   /
      /`, ,  |  |   /
     / "-.|  |  |   /'
     /  / |  /,__ |  /` 
    ljs / /' | / `"'  (  
    __/ /' | |   `    
     /  | |   `   
    `-,/  / |   /  |-"`
       `"""^^^   `^^""""`

  ------------------------------------------------'''

printGreen(replyContent)

注意:测试在idea开发工具中打印使用未显示彩色,但在Linux控制台,cmd控制台打均为彩色字体。

以上就是本文的全部内容,希望对大家的学习有所帮助。