python实现在cmd窗口显示彩色文字

yipeiwu_com6年前Python基础

新手小白,一直在为cmd窗口的暗白色文字感到苦恼,在网上找了许多方法(也就那两种吐舌头),现在稍微整理了一下,便于使用。

效果图:

import ctypes
 
STD_INPUT_HANDLE = -10 
STD_OUTPUT_HANDLE= -11 
STD_ERROR_HANDLE = -12 
 
FOREGROUND_DARKBLUE = 0x01 # 暗蓝色
FOREGROUND_DARKGREEN = 0x02 # 暗绿色
FOREGROUND_DARKSKYBLUE = 0x03 # 暗天蓝色
FOREGROUND_DARKRED = 0x04 # 暗红色
FOREGROUND_DARKPINK = 0x05 # 暗粉红色
FOREGROUND_DARKYELLOW = 0x06 # 暗黄色
FOREGROUND_DARKWHITE = 0x07 # 暗白色
FOREGROUND_DARKGRAY = 0x08 # 暗灰色
FOREGROUND_BLUE = 0x09 # 蓝色
FOREGROUND_GREEN = 0x0a # 绿色
FOREGROUND_SKYBLUE = 0x0b # 天蓝色
FOREGROUND_RED = 0x0c # 红色
FOREGROUND_PINK = 0x0d # 粉红色
FOREGROUND_YELLOW = 0x0e # 黄色
FOREGROUND_WHITE = 0x0f # 白色
 
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
 
def resetColor():
  set_cmd_text_color(FOREGROUND_DARKWHITE)
 
def cprint(mess,color):
  if color=='暗蓝色':
    set_cmd_text_color(FOREGROUND_DARKBLUE)
 
  elif color=='暗绿色':
    set_cmd_text_color(FOREGROUND_DARKGREEN)
 
  elif color=='暗天蓝色':
    set_cmd_text_color(FOREGROUND_DARKSKYBLUE)
    
  elif color=='暗红色':
    set_cmd_text_color(FOREGROUND_DARKRED)
 
  elif color=='暗粉红色':
    set_cmd_text_color(FOREGROUND_DARKPINK)
    
  elif color=='暗黄色':
    set_cmd_text_color(FOREGROUND_DARKYELLOW)
 
  elif color=='暗白色':
    set_cmd_text_color(FOREGROUND_DARKWHITE)
 
  elif color=='暗灰色':
    set_cmd_text_color(FOREGROUND_DARKGRAY)
 
  elif color=='蓝色':
    set_cmd_text_color(FOREGROUND_BLUE)
 
  elif color=='绿色':
    set_cmd_text_color(FOREGROUND_GREEN)
 
  elif color=='天蓝色':
    set_cmd_text_color(FOREGROUND_SKYBLUE)
 
  elif color=='红色':
    set_cmd_text_color(FOREGROUND_RED)
 
  elif color=='粉红色':
    set_cmd_text_color(FOREGROUND_PINK)
 
  elif color=='黄色':
    set_cmd_text_color(FOREGROUND_YELLOW)
 
  elif color=='白色':
    set_cmd_text_color(FOREGROUND_WHITE)
    
  print(mess)
  resetColor()
 
if __name__=='__main__':
  while 1:
    mess=input('信息:')
    color=input('颜色:')
    cprint(mess,color)

使用方法:

from cmdFontColor import *

cprint('信息','颜色')

以上这篇python实现在cmd窗口显示彩色文字就是小编分享给大家的全部内容了,希望能给大家一个参考,也希望大家多多支持【听图阁-专注于Python设计】。

相关文章

Python实现正弦信号的时域波形和频谱图示例【基于matplotlib】

Python实现正弦信号的时域波形和频谱图示例【基于matplotlib】

本文实例讲述了Python实现正弦信号的时域波形和频谱图。分享给大家供大家参考,具体如下: # -*- coding: utf-8 -*- # 正弦信号的时域波形与频谱图 impor...

python获取当前时间对应unix时间戳的方法

本文实例讲述了python获取当前时间对应unix时间戳的方法。分享给大家供大家参考。具体分析如下: Unix timestamp:是从1970年1月1日(UTC/GMT的午夜)开始所经...

python查询mysql中文乱码问题

问题: python2.7 查询或者插入中文数据在mysql中的时候出现中文乱码 --- 可能情况: 1.mysql数据库各项没有设置编码,默认为'latin' 2.使用MySQL.co...

python实现对图片进行旋转,放缩,裁剪的功能

先说明下,我这是对某个目录下的图片名称进行操作,该目录下的图片名称为1.jpg,2.jpg。。。。。这样类似的图片名。 1.旋转 # -*-coding:utf-8-*- from...

Python脚本实现集群检测和管理功能

Python脚本实现集群检测和管理功能

场景是这样的:一个生产机房,会有很多的测试机器和生产机器(也就是30台左右吧),由于管理较为混乱导致了哪台机器有人用、哪台机器没人用都不清楚,从而产生了一个想法--利用一台机器来管理所有...