Python编程实现控制cmd命令行显示颜色的方法示例


Posted in Python onAugust 14, 2017

本文实例讲述了Python编程实现控制cmd命令行显示颜色的方法。分享给大家供大家参考,具体如下:

基于win7 + python3.4

运行效果:

Python编程实现控制cmd命令行显示颜色的方法示例

import ctypes
import sys
'''Windows CMD命令行颜色'''
# 句柄号
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 # 加亮
colors = [FOREGROUND_BLUE, # 蓝字
     FOREGROUND_GREEN,# 绿字
     FOREGROUND_RED, # 红字
     FOREGROUND_BLUE | FOREGROUND_INTENSITY, # 蓝字(加亮)
     FOREGROUND_GREEN | FOREGROUND_INTENSITY, # 绿字(加亮)
     FOREGROUND_RED  | FOREGROUND_INTENSITY, # 红字(加亮)
     FOREGROUND_RED | FOREGROUND_INTENSITY| BACKGROUND_BLUE | BACKGROUND_INTENSITY] # 红字蓝底
texts = ['蓝字',
     '绿字',
     '红字',
     '蓝字(加亮)',
     '绿字(加亮)',
     '红字(加亮)',
     '红字蓝底']
# See "http://msdn.microsoft.com/library/default.asp?url=/library/en-us/winprog/winprog/windows_api_reference.asp" for information on Windows APIs.
std_out_handle = ctypes.windll.kernel32.GetStdHandle(STD_OUTPUT_HANDLE)
def set_cmd_color(color, handle=std_out_handle):
  bool = ctypes.windll.kernel32.SetConsoleTextAttribute(handle, color)
  return bool
def reset_color():
  set_cmd_color(FOREGROUND_RED | FOREGROUND_GREEN | FOREGROUND_BLUE)
def print_color_text(color, text):
  set_cmd_color(color)
  sys.stdout.write('%s\n' % text) # ==> print(text)
  reset_color()
def print_colors_texts(colors, texts):
  for color, text in zip(colors, texts):
    print_color_text(color, text)
if __name__ == "__main__":
  print_colors_texts(colors, texts)

更多关于Python相关内容可查看本站专题:《Python字符串操作技巧汇总》、《Python常用遍历技巧总结》、《Python数据结构与算法教程》、《Python函数使用技巧总结》及《Python入门与进阶经典教程》

希望本文所述对大家Python程序设计有所帮助。

Python 相关文章推荐
python使用WMI检测windows系统信息、硬盘信息、网卡信息的方法
May 15 Python
在Python中执行系统命令的方法示例详解
Sep 14 Python
python dataframe 输出结果整行显示的方法
Jun 14 Python
django小技巧之html模板中调用对象属性或对象的方法
Nov 30 Python
python 实现将txt文件多行合并为一行并将中间的空格去掉方法
Dec 20 Python
python安装pywin32clipboard的操作方法
Jan 24 Python
详解django2中关于时间处理策略
Mar 06 Python
Django如何开发简单的查询接口详解
May 17 Python
django+echart数据动态显示的例子
Aug 12 Python
python实现简单的tcp 文件下载
Sep 16 Python
Python实现FTP文件定时自动下载的步骤
Dec 19 Python
pytorch--之halfTensor的使用详解
May 24 Python
django 创建过滤器的实例详解
Aug 14 #Python
django创建自定义模板处理器的实例详解
Aug 14 #Python
Python微信库:itchat的用法详解
Aug 14 #Python
Python实现的概率分布运算操作示例
Aug 14 #Python
python itchat实现微信好友头像拼接图的示例代码
Aug 14 #Python
python的mysqldb安装步骤详解
Aug 14 #Python
python制作小说爬虫实录
Aug 14 #Python
You might like
smarty内置函数section的用法
2015/01/22 PHP
laravel 修改.htaccess文件 重定向public的解决方法
2019/10/12 PHP
网页中实现浏览器的最大,最小化和关闭按钮
2007/03/12 Javascript
jquery.messager.js插件导致页面抖动的解决方法
2013/07/14 Javascript
js获取或设置当前窗口url参数的小例子
2013/10/14 Javascript
JS操作Cookies的小例子
2013/10/15 Javascript
原生js事件的添加和删除的封装
2014/07/01 Javascript
js返回前一页刷新本页重载页面
2014/07/29 Javascript
浅谈js键盘事件全面控制
2016/12/01 Javascript
jQuery日程管理控件glDatePicker用法详解
2017/03/29 jQuery
JavaScript 获取元素在父节点中的下标(推荐)
2017/06/28 Javascript
[js高手之路]图解javascript的原型(prototype)对象,原型链实例
2017/08/28 Javascript
详解Nodejs get获取远程服务器接口数据
2019/03/26 NodeJs
Vue.js + Nuxt.js 项目中使用 Vee-validate 表单校验
2019/04/22 Javascript
[50:45]2018DOTA2亚洲邀请赛 4.6 淘汰赛 VP vs TNC 第一场
2018/04/10 DOTA
python 实现tar文件压缩解压的实例详解
2017/08/20 Python
Python中static相关知识小结
2018/01/02 Python
python+matplotlib绘制饼图散点图实例代码
2018/01/20 Python
python之django母板页面的使用
2018/07/03 Python
flask中过滤器的使用详解
2018/08/01 Python
python实现决策树分类(2)
2018/08/30 Python
解决Django migrate不能发现app.models的表问题
2019/08/31 Python
python在协程中增加任务实例操作
2021/02/28 Python
兰蔻美国官网:Lancome美国
2017/04/25 全球购物
解释i节点在文件系统中的作用
2013/11/26 面试题
结婚喜宴家长答谢词
2014/01/15 职场文书
文科生自我鉴定
2014/02/15 职场文书
电子商务专业求职信
2014/07/10 职场文书
国庆促销活动总结
2014/08/29 职场文书
商务英语专业大学生职业生涯规划书
2014/09/14 职场文书
学习十八大标语
2014/10/09 职场文书
教师学习党的群众路线教育实践活动心得体会
2014/10/31 职场文书
中学生勤俭节约倡议书
2015/04/29 职场文书
单位收入证明范本
2015/06/18 职场文书
小学音乐课歌曲《堆雪人》教学反思
2016/02/18 职场文书
mysql部分操作
2021/04/05 MySQL