python之控制台(console)颜色显示
#coding=utf-8
import ctypes,sys STD_INPUT_HANDLE = -10
STD_OUTPUT_HANDLE = -11
STD_ERROR_HANDLE = -12 # 字体颜色定义 ,关键在于颜色编码,由2位十六进制组成,分别取0~f,前一位指的是背景色,后一位指的是字体色
#由于该函数的限制,应该是只有这16种,可以前景色与背景色组合。也可以几种颜色通过或运算组合,组合后还是在这16种颜色中 # Windows CMD命令行 字体颜色定义 text colors
FOREGROUND_BLACK = 0x00 # black.
FOREGROUND_DARKBLUE = 0x01 # dark blue.
FOREGROUND_DARKGREEN = 0x02 # dark green.
FOREGROUND_DARKSKYBLUE = 0x03 # dark skyblue.
FOREGROUND_DARKRED = 0x04 # dark red.
FOREGROUND_DARKPINK = 0x05 # dark pink.
FOREGROUND_DARKYELLOW = 0x06 # dark yellow.
FOREGROUND_DARKWHITE = 0x07 # dark white.
FOREGROUND_DARKGRAY = 0x08 # dark gray.
FOREGROUND_BLUE = 0x09 # blue.
FOREGROUND_GREEN = 0x0a # green.
FOREGROUND_SKYBLUE = 0x0b # skyblue.
FOREGROUND_RED = 0x0c # red.
FOREGROUND_PINK = 0x0d # pink.
FOREGROUND_YELLOW = 0x0e # yellow.
FOREGROUND_WHITE = 0x0f # white. # Windows CMD命令行 背景颜色定义 background colors
BACKGROUND_BLUE = 0x10 # dark blue.
BACKGROUND_GREEN = 0x20 # dark green.
BACKGROUND_DARKSKYBLUE = 0x30 # dark skyblue.
BACKGROUND_DARKRED = 0x40 # dark red.
BACKGROUND_DARKPINK = 0x50 # dark pink.
BACKGROUND_DARKYELLOW = 0x60 # dark yellow.
BACKGROUND_DARKWHITE = 0x70 # dark white.
BACKGROUND_DARKGRAY = 0x80 # dark gray.
BACKGROUND_BLUE = 0x90 # blue.
BACKGROUND_GREEN = 0xa0 # green.
BACKGROUND_SKYBLUE = 0xb0 # skyblue.
BACKGROUND_RED = 0xc0 # red.
BACKGROUND_PINK = 0xd0 # pink.
BACKGROUND_YELLOW = 0xe0 # yellow.
BACKGROUND_WHITE = 0xf0 # white. # 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) ############################################################### #暗蓝色
#dark blue
def printDarkBlue(mess):
set_cmd_text_color(FOREGROUND_DARKBLUE)
sys.stdout.write(mess)
resetColor() #暗绿色
#dark green
def printDarkGreen(mess):
set_cmd_text_color(FOREGROUND_DARKGREEN)
sys.stdout.write(mess)
resetColor() #暗天蓝色
#dark sky blue
def printDarkSkyBlue(mess):
set_cmd_text_color(FOREGROUND_DARKSKYBLUE)
sys.stdout.write(mess)
resetColor() #暗红色
#dark red
def printDarkRed(mess):
set_cmd_text_color(FOREGROUND_DARKRED)
sys.stdout.write(mess)
resetColor() #暗粉红色
#dark pink
def printDarkPink(mess):
set_cmd_text_color(FOREGROUND_DARKPINK)
sys.stdout.write(mess)
resetColor() #暗黄色
#dark yellow
def printDarkYellow(mess):
set_cmd_text_color(FOREGROUND_DARKYELLOW)
sys.stdout.write(mess)
resetColor() #暗白色
#dark white
def printDarkWhite(mess):
set_cmd_text_color(FOREGROUND_DARKWHITE)
sys.stdout.write(mess)
resetColor() #暗灰色
#dark gray
def printDarkGray(mess):
set_cmd_text_color(FOREGROUND_DARKGRAY)
sys.stdout.write(mess)
resetColor() #蓝色
#blue
def printBlue(mess):
set_cmd_text_color(FOREGROUND_BLUE)
sys.stdout.write(mess)
resetColor() #绿色
#green
def printGreen(mess):
set_cmd_text_color(FOREGROUND_GREEN)
sys.stdout.write(mess)
resetColor() #天蓝色
#sky blue
def printSkyBlue(mess):
set_cmd_text_color(FOREGROUND_SKYBLUE)
sys.stdout.write(mess)
resetColor() #红色
#red
def printRed(mess):
set_cmd_text_color(FOREGROUND_RED)
sys.stdout.write(mess)
resetColor() #粉红色
#pink
def printPink(mess):
set_cmd_text_color(FOREGROUND_PINK)
sys.stdout.write(mess)
resetColor() #黄色
#yellow
def printYellow(mess):
set_cmd_text_color(FOREGROUND_YELLOW)
sys.stdout.write(mess)
resetColor() #白色
#white
def printWhite(mess):
set_cmd_text_color(FOREGROUND_WHITE)
sys.stdout.write(mess)
resetColor() ################################################## #白底黑字
#white bkground and black text
def printWhiteBlack(mess):
set_cmd_text_color(FOREGROUND_BLACK | BACKGROUND_WHITE)
sys.stdout.write(mess)
resetColor() #白底黑字
#white bkground and black text
def printWhiteBlack_2(mess):
set_cmd_text_color(0xf0)
sys.stdout.write(mess)
resetColor() #黄底蓝字
#white bkground and black text
def printYellowRed(mess):
set_cmd_text_color(BACKGROUND_YELLOW | FOREGROUND_RED)
sys.stdout.write(mess)
resetColor() ############################################################## if __name__ == '__main__': print
printDarkBlue(u'printDarkBlue:暗蓝色文字\n'.encode('gb2312'))
printDarkGreen(u'printDarkGreen:暗绿色文字\n'.encode('gb2312'))
printDarkSkyBlue(u'printDarkSkyBlue:暗天蓝色文字\n'.encode('gb2312'))
printDarkRed(u'printDarkRed:暗红色文字\n'.encode('gb2312'))
printDarkPink(u'printDarkPink:暗粉红色文字\n'.encode('gb2312'))
printDarkYellow(u'printDarkYellow:暗黄色文字\n'.encode('gb2312'))
printDarkWhite(u'printDarkWhite:暗白色文字\n'.encode('gb2312'))
printDarkGray(u'printDarkGray:暗灰色文字\n'.encode('gb2312'))
printBlue(u'printBlue:蓝色文字\n'.encode('gb2312'))
printGreen(u'printGreen:绿色文字\n'.encode('gb2312'))
printSkyBlue(u'printSkyBlue:天蓝色文字\n'.encode('gb2312'))
printRed(u'printRed:红色文字\n'.encode('gb2312'))
printPink(u'printPink:粉红色文字\n'.encode('gb2312'))
printYellow(u'printYellow:黄色文字\n'.encode('gb2312'))
printWhite(u'printWhite:白色文字\n'.encode('gb2312')) printWhiteBlack(u'printWhiteBlack:白底黑字输出\n'.encode('gb2312'))
printWhiteBlack_2(u'printWhiteBlack_2:白底黑字输出(直接传入16进制参数)\n'.encode('gb2312'))
printYellowRed(u'printYellowRed:黄底红字输出\n'.encode('gb2312'))
python之控制台(console)颜色显示的更多相关文章
- [No000090]C#捕获控制台(console)关闭事件及响应cmd快捷键
捕获控制台(console)关闭事件: 1.Ctrl+C信号: 2.Ctrl+Break信号: 3.用户系统关闭Console时: 4.用户退出系统时: 5.系统将要关闭时: using System ...
- [转]Chrome 控制台console的用法
Chrome 控制台console的用法 下面我们来看看console里面具体提供了哪些方法可以供我们平时调试时使用. 目前控制台方法和属性有: ["$$", "$x&q ...
- 控制台console输出信息原理理解
Eclipse控制台输出信息的控制 标签: Eclipse控制台输出信息 2015-01-02 14:11 22454人阅读 评论(1) 收藏 举报 分类: Some Tips(15) 版权声明: ...
- Eclipse 和 MyEclipse控制台console不停的自动跳动,跳出来解决方案
有时候Eclipse启动,控制台console不会自动跳出来,需要手工点击该选项卡才行,按下面的设置,可以让它自动跳出来(或不跳出来):由二种方法: 一.windows -> prefer ...
- 清除控制台 console
清除控制台 console.log(1) // console.clear() // CTRL + K // Ctrl + L // process.stdout.write('\033c'); // ...
- Eclipse 的控制台console乱码
乱码!Eclipse 的控制台console必须用GBK编码. Eclipse 的控制台必须用GBK编码.所以条件1和条件4必须同时满足否则运行的还是乱码.才能保证不是乱码. 条件1,Window ...
- Eclipse的控制台console经常闪现
Eclipse的控制台console有时候经常闪现! 让它不经常的调出来,可以按下面的操作去掉它: windows -> preferences -> run/debug ...
- python 2 控制台传参,解包,编码问题初探
python 2 控制台传参,需要从sys模块中导入argv,argv返回的第一个参数当前脚本(script)的文件名,后面是参数,参数个数必须和解包(unpack)时使用的参数个数一致 1.本例子演 ...
- IntelliJ IDEA控制台Console里没有查找快捷键
问题描述:之前的项目一直用的 Eclipse,习惯了其快捷键的使用,现在的项目换到IntelliJ IDEA,为了尽快上手,就把快捷键Keymap修改为Eclipse方式.发现在控制台Console里 ...
- MyEclipse控制台console自动跳动的解决方案
有时候Eclipse启动,控制台console不会自动跳出来,需要手工点击该选项卡才行 按下面的设置,可以让它自动跳出来(或不跳出来): windows -> preferences ...
随机推荐
- 1011. A+B和C (15)
/*1011. A+B和C (15) 时间限制150 ms内存限制65536 kB代码长度限制8000 B判题程序Standard作者HOU, Qiming给定区间[-231, 231]内的3个整数A ...
- mpls vpn剩余笔记
将IP地址映射为简单的具有固定长度的标签 用于快速数据包交换 20 3 1 8 在整个转发过程中,交换节点仅根据标记进行转发 标签交换路径(LSP) 多协议标签交换MPLS最初是为了提高转发速度而提出 ...
- JPG、PNG和GIF图片的基本原理及优…
JPG.PNG和GIF图片的基本原理及优化方法 一提到图片,我们就不得不从位图开始说起,位图图像(bitmap),也称为点阵图像或绘制图像,是由称作像素(图片元素)的单个点组成的.这些点可以进行不同的 ...
- Web in Linux小笔记001
Linux灾难恢复: Root密码修复 Centos single Filesystem是硬盘文件根目录,无法再cd ..就像macitosh 硬盘图标 Pwd:显示绝对路径 MBR修复 模拟MBR被 ...
- FFmpeg 常用命令收集
FFmpeg 常用命令 合并视频 ffmpeg -i "KTDS-820A_FHD.mp4" -c copy -bsf:v h264_mp4toannexb -f mpegts i ...
- Quartz的misfire处理机制分析
Quartz是一个特性丰富的开源的任务调度开发库,它可以很方便的集成到你的应用程序中.在Quartz中,当一个持久的触发器因为调度器被关闭或者线程池中没有可用的线程而错过了激活时间时,就会发生激活失败 ...
- 201521123121 《Java程序设计》第4周学习总结
1. 本周学习总结 1.1 尝试使用思维导图总结有关继承的知识点. 1.2 使用常规方法总结其他上课内容. 对象的封装:将类的某些信息隐藏在类内部,不允许外部程序直接访问,而是通过该类提供的方法来实现 ...
- C# 泛型集合
原文出处我的wiki,转载请说明出处 考虑到泛型在集合类型中的广泛应用,这里一起讨论. 1. 泛型 1.1 泛型的定义与约束 创建泛型方法.委托.接口或类时,需要在名称后增加尖括号及其中的泛型参数,泛 ...
- Activiti第二篇【管理流程定义、执行任务和流程实例、流程变量】
上篇Activiti只是一个快速入门案例,这篇就讲定义.部署.查看任务等等的一些细节[涉及到的数据库表.对象等等]- 管理流程定义 管理流程定义主要涉及到以下的4张表: -- 流程部署相关的表 SEL ...
- 将数组分割为几个等长度的子数组(使用slice)
先了解一下slice方法: slice() 1.定义:slice()可从已有数组中截取返回指定的元素,形成一个新的数组: 语法:arrayObject.slice(start,end): 参数 描述 ...