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用于url解码和中文解析的小脚本(python url decoder)
Aug 11 Python
深入浅析Python中join 和 split详解(推荐)
Jun 30 Python
Python实现将16进制字符串转化为ascii字符的方法分析
Jul 21 Python
Python调用C# Com dll组件实战教程
Oct 12 Python
python实现简单登陆流程的方法
Apr 22 Python
对python-3-print重定向输出的几种方法总结
May 11 Python
tensorflow实现简单的卷积网络
May 24 Python
用Python和WordCloud绘制词云的实现方法(内附让字体清晰的秘笈)
Jan 08 Python
pyhanlp安装介绍和简单应用
Feb 22 Python
在pycharm中debug 实时查看数据操作(交互式)
Jun 09 Python
彻底解决Python包下载慢问题
Nov 15 Python
python opencv角点检测连线功能的实现代码
Nov 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
PHP实现定时生成HTML网站首页实例代码
2008/11/20 PHP
探讨:如何使用PhpDocumentor生成文档
2013/06/25 PHP
php下获取http状态的实现代码
2014/05/09 PHP
ThinkPHP公共配置文件与各自项目中配置文件组合的方法
2014/11/24 PHP
详解PHP的Yii框架中扩展的安装与使用
2016/04/01 PHP
zen cart实现订单中增加paypal中预留电话的方法
2016/07/12 PHP
PHP数据库操作二:memcache用法分析
2017/08/16 PHP
PHP5.6新增加的可变函数参数用法分析
2017/08/25 PHP
Gambit vs ForZe BO3 第二场 2.13
2021/03/10 DOTA
JavaScript Array扩展实现代码
2009/10/14 Javascript
基于Jquery的动态添加控件并取值的实现代码
2010/09/24 Javascript
JavaScript 创建运动框架的实现代码
2013/05/08 Javascript
javascript制作2048游戏
2015/03/30 Javascript
第一次接触神奇的Bootstrap表单
2016/07/27 Javascript
jquery将标签元素的高设为屏幕的百分比
2017/04/19 jQuery
简单明了区分escape、encodeURI和encodeURIComponent
2018/05/26 Javascript
vue给组件传递不同的值方法
2018/09/29 Javascript
使用jQuery实现掷骰子游戏
2019/10/24 jQuery
JavaScript实现左右滚动电影画布
2020/02/06 Javascript
[01:38]完美世界DOTA2联赛(PWL)宣传片:第一站
2020/10/26 DOTA
Python实现快速多线程ping的方法
2015/07/15 Python
把csv文件转化为数组及数组的切片方法
2018/07/04 Python
python 函数中的内置函数及用法详解
2019/07/02 Python
django创建最简单HTML页面跳转方法
2019/08/16 Python
Python 余弦相似度与皮尔逊相关系数 计算实例
2019/12/23 Python
python判断是空的实例分享
2020/07/06 Python
检测浏览器对HTML5和CSS3支持度的方法
2015/06/25 HTML / CSS
英语教学随笔感言
2014/02/20 职场文书
电子信息工程专业自荐书
2014/06/24 职场文书
学习雷锋精神活动总结
2015/02/06 职场文书
毕业生爱心捐书倡议书
2015/04/27 职场文书
开学典礼校长致辞
2015/07/29 职场文书
婚礼迎宾词大全
2015/08/10 职场文书
四则混合运算教学反思
2016/02/23 职场文书
Python中Selenium对Cookie的操作方法
2021/07/09 Python
python​格式化字符串
2022/04/20 Python