python在linux中输出带颜色的文字的方法


Posted in Python onJune 19, 2014

在开发项目过程中,为了方便调试代码,经常会向stdout中输出一些日志,默认的这些日志就直接显示在了终端中。而一般的应用服务器,第三方库,甚至服务器的一些通告也会在终端中显示,这样就搅乱了我们想要的信息。

我们可以通过对有用的信息设置不同颜色来达到醒目的效果,因为我平时都是在linux下开发,而linux终端中的颜色是用转义序列控制的,转义序列是以ESC开头,可以用\033完成相同的工作(ESC的ASCII码用十进制表示就是27,等于用八进制表示的33)。

书写格式,和相关说明如下:

格式:\033[显示方式;前景色;背景色m

 

说明:

前景色            背景色           颜色

---------------------------------------

30                40              黑色

31                41              红色

32                42              绿色

33                43              ?色

34                44              蓝色

35                45              紫红色

36                46              青蓝色

37                47              白色

显示方式           意义

-------------------------

0                终端默认设置

1                高亮显示

4                使用下划线

5                闪烁

7                反白显示

8                不可见

 

例子:

\033[1;31;40m    <!--1-高亮显示 31-前景色红色  40-背景色黑色-->

\033[0m          <!--采用终端默认设置,即取消颜色设置-->  

下面是我在python中使用的方式:

print '\033[1;31;40m'

print '*' * 50

print '*HOST:\t', request.META.get('REMOTE_ADDR')

print '*URI:\t', request.path

print '*ARGS:\t', QueryDict(request.body)

print '*TIME:\t', time.time() - request.start_time

print '*' * 50

print '\033[0m'

效果图如下:
python在linux中输出带颜色的文字的方法

当然这只是一种简单的实现方式,而且仅在linux下有效,其它方式可以使用termcolor,或者参考ipython的console实现(pyreadline)。

Python 相关文章推荐
Python中删除文件的程序代码
Mar 13 Python
简单了解Python中的几种函数
Nov 03 Python
Python判断两个对象相等的原理
Dec 12 Python
利用Anaconda简单安装scrapy框架的方法
Jun 13 Python
python 统计数组中元素出现次数并进行排序的实例
Jul 02 Python
手把手教你使用Python创建微信机器人
Apr 29 Python
Django的用户模块与权限系统的示例代码
Jul 24 Python
Python使用lambda表达式对字典排序操作示例
Jul 25 Python
python的re模块使用方法详解
Jul 26 Python
python进程间通信Queue工作过程详解
Nov 01 Python
python实现低通滤波器代码
Feb 26 Python
解决python和pycharm安装gmpy2 出现ERROR的问题
Aug 28 Python
解决windows下Sublime Text 2 运行 PyQt 不显示的方法分享
Jun 18 #Python
win7 下搭建sublime的python开发环境的配置方法
Jun 18 #Python
Python写的贪吃蛇游戏例子
Jun 16 #Python
Python中的yield浅析
Jun 16 #Python
python中使用enumerate函数遍历元素实例
Jun 16 #Python
Python中字典(dict)和列表(list)的排序方法实例
Jun 16 #Python
Python实现的几个常用排序算法实例
Jun 16 #Python
You might like
php实现阿拉伯数字和罗马数字相互转换的方法
2015/04/17 PHP
利用php-cli和任务计划实现订单同步功能的方法
2017/05/03 PHP
PHP substr()函数参数解释及用法讲解
2017/11/23 PHP
XRegExp 0.2: Now With Named Capture
2007/11/30 Javascript
javascript跨域的4种方法和原理详解
2014/04/08 Javascript
javascript学习笔记(二)数组和对象部分
2014/09/30 Javascript
jQuery绑定事件监听bind和移除事件监听unbind用法实例详解
2016/01/19 Javascript
利用jQuery中的ajax分页实现代码
2016/02/25 Javascript
JavaScript中解决多浏览器兼容性23个问题的快速解决方法
2016/05/19 Javascript
Node.js的文件权限及读写flag详解
2016/10/11 Javascript
Bootstrap3 datetimepicker控件使用实例
2016/12/13 Javascript
Vue+Vux项目实践完整代码
2017/11/30 Javascript
原生JS实现瀑布流插件
2018/02/06 Javascript
mpvue中配置vuex并持久化到本地Storage图文教程解析
2018/03/15 Javascript
vue滚动插件better-scroll使用详解
2019/10/18 Javascript
JavaScript 如何计算文本的行数的实现
2020/09/14 Javascript
vue项目打包后请求地址错误/打包后跨域操作
2020/11/04 Javascript
Perl中著名的Schwartzian转换问题解决实现
2015/06/02 Python
python学习 流程控制语句详解
2016/06/01 Python
python常用知识梳理(必看篇)
2017/03/23 Python
详解Python if-elif-else知识点
2018/06/11 Python
基于Pandas读取csv文件Error的总结
2018/06/15 Python
python 从文件夹抽取图片另存的方法
2018/12/04 Python
详解【python】str与json类型转换
2019/04/29 Python
python找出一个列表中相同元素的多个索引实例
2019/06/11 Python
Python空间数据处理之GDAL读写遥感图像
2019/08/01 Python
Python drop方法删除列之inplace参数实例
2020/06/27 Python
python3爬虫中引用Queue的实例讲解
2020/11/24 Python
python爬虫破解字体加密案例详解
2021/03/02 Python
好的促销活动方案
2014/08/21 职场文书
乡镇党的群众路线对照检查材料
2014/09/24 职场文书
学习焦裕禄精神践行三严三实心得体会
2014/10/13 职场文书
工作业绩不及格检讨书
2014/10/28 职场文书
人代会简报
2015/07/21 职场文书
2016银行招聘自荐信
2016/01/28 职场文书
jQuery class属性操作addClass()与removeClass()、hasClass()、toggleClass()
2021/03/31 jQuery