本文主要是介绍python在windows的cmd中打印彩色文字,希望对大家解决编程问题提供一定的参考价值,需要的开发者们随着小编来一起学习吧!
在cmd中打印出彩色文字,主代码来自网上,一不小心忘了原链接了,抱歉。下面我是修改后的内容。
-
-
- import ctypes
-
- STD_INPUT_HANDLE = -10
- STD_OUTPUT_HANDLE= -11
- STD_ERROR_HANDLE = -12
-
- FOREGROUND_BLACK = 0x0
- FOREGROUND_BLUE = 0x01
- FOREGROUND_GREEN= 0x02
- FOREGROUND_RED = 0x04
- FOREGROUND_INTENSITY = 0x08
-
- BACKGROUND_BLUE = 0x10
- BACKGROUND_GREEN= 0x20
- BACKGROUND_RED = 0x40
- BACKGROUND_INTENSITY = 0x80
-
- class Color:
- ''
-
- std_out_handle = ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)
-
- def set_cmd_color(self, color, handle=std_out_handle):
-
-
-
- bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color)
- return bool
-
- def reset_color(self):
- self.set_cmd_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)
-
- def print_red_text(self, print_text):
- self.set_cmd_color(FOREGROUND_RED | FOREGROUND_INTENSITY)
- print print_text
- self.reset_color()
-
- def print_green_text(self, print_text):
- self.set_cmd_color(FOREGROUND_GREEN | FOREGROUND_INTENSITY)
- print print_text
- self.reset_color()
-
- def print_blue_text(self, print_text):
- self.set_cmd_color(FOREGROUND_BLUE | FOREGROUND_INTENSITY)
- print print_text
- self.reset_color()
-
- def print_red_text_with_blue_bg(self, print_text):
- self.set_cmd_color(FOREGROUND_RED | FOREGROUND_INTENSITY| BACKGROUND_BLUE | BACKGROUND_INTENSITY)
- print print_text
- self.reset_color()
-
- if __name__ == "__main__":
- clr = Color()
- clr.print_red_text('red')
- clr.print_green_text('green')
- clr.print_blue_text('blue')
- clr.print_red_text_with_blue_bg('background')
-
使用:
主要是根据3基色组合颜色,非常好用。也可以直接给数字来确定颜色值,0-255是字体颜色值范围,256-511是背景颜色值范围。
结果:
这篇关于python在windows的cmd中打印彩色文字的文章就介绍到这儿,希望我们推荐的文章对编程师们有所帮助!