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批量重命名同一文件夹下文件的方法
May 25 Python
python导入时小括号大作用
Jan 10 Python
Pycharm学习教程(4) Python解释器的相关配置
May 03 Python
Python3实现将本地JSON大数据文件写入MySQL数据库的方法
Jun 13 Python
详解Python3.6的py文件打包生成exe
Jul 13 Python
Python如何获得百度统计API的数据并发送邮件示例代码
Jan 27 Python
查看端口并杀进程python脚本代码
Dec 17 Python
pytorch实现CNN卷积神经网络
Feb 19 Python
python 读取、写入txt文件的示例
Sep 27 Python
Python+OpenCV图像处理——实现轮廓发现
Oct 23 Python
Django与数据库交互的实现
Jun 03 Python
Python加密与解密模块hashlib与hmac
Jun 05 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
一拳超人中怪人协会钦定! S级别最强四人!
2020/03/02 日漫
中国广播史趣谈 — 几个历史第一次
2021/03/01 无线电
javascript,php获取函数参数对象的代码
2011/02/03 PHP
php htmlspecialchars()与shtmlspecialchars()函数的深入分析
2013/06/05 PHP
如何利用php array_multisort函数 对数据库结果进行复杂排序
2013/06/08 PHP
php正则preg_replace_callback函数用法实例
2015/06/01 PHP
php ajax实现文件上传进度条
2016/03/29 PHP
轻松掌握php设计模式之访问者模式
2016/09/23 PHP
thinkphp3.2中实现phpexcel导出带生成图片示例
2017/02/14 PHP
PHP魔术方法之__call与__callStatic使用方法
2017/07/23 PHP
解决在laravel中leftjoin带条件查询没有返回右表为NULL的问题
2019/10/15 PHP
Javascript条件判断使用小技巧总结
2008/09/08 Javascript
利用JQuery为搜索栏增加tag提示
2009/06/22 Javascript
使用Microsoft Ajax Minifier减小JavaScript文件大小的方法
2010/04/01 Javascript
jquery利用event.which方法获取键盘输入值的代码
2011/10/09 Javascript
基于jQuery的输入框在光标位置插入内容, 并选中
2011/10/29 Javascript
jQuery 计算iframe 窗口大小的方法
2014/05/13 Javascript
JavaScript中的变量作用域介绍
2014/12/31 Javascript
js实时获取并显示当前时间的方法
2015/07/31 Javascript
jQuery手指滑动轮播效果
2016/12/22 Javascript
详解node.js平台下Express的session与cookie模块包的配置
2017/04/26 Javascript
页面间固定参数,通过cookie传值的实现方法
2017/05/31 Javascript
Angular2 组件间通过@Input @Output通讯示例
2017/08/24 Javascript
Angular2 http jsonp的实例详解
2017/08/31 Javascript
tween.js缓动补间动画算法示例
2018/02/13 Javascript
基于原生js实现九宫格算法代码实例
2020/07/03 Javascript
vue实现简单加法计算器
2020/10/22 Javascript
python 查找文件名包含指定字符串的方法
2018/06/05 Python
Python实现平行坐标图的两种方法小结
2019/07/04 Python
Python对接 xray 和微信实现自动告警
2019/09/17 Python
Python中Flask-RESTful编写API接口(小白入门)
2019/12/11 Python
django admin后管定制-显示字段的实例
2020/03/11 Python
localStorage的过期时间设置的方法详解
2018/11/26 HTML / CSS
澳大利亚商务邀请函
2014/01/17 职场文书
员工辞职信怎么写
2015/02/27 职场文书
vue @click.native 绑定原生点击事件
2022/04/22 Vue.js