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之hello world
May 21 Python
Python编程实现生成特定范围内不重复多个随机数的2种方法
Apr 14 Python
Python实现文件内容批量追加的方法示例
Aug 29 Python
python实现监控某个服务 服务崩溃即发送邮件报告
Jun 21 Python
Python利用heapq实现一个优先级队列的方法
Feb 03 Python
Pycharm中出现ImportError:DLL load failed:找不到指定模块的解决方法
Sep 17 Python
python numpy数组复制使用实例解析
Jan 10 Python
python中提高pip install速度
Feb 14 Python
基于Django signals 信号作用及用法详解
Mar 28 Python
Python如何根据时间序列数据作图
May 12 Python
Anaconda3中的Jupyter notebook添加目录插件的实现
May 18 Python
使用python创建股票的时间序列可视化分析
Mar 03 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
浅析PKI加密解密 OpenSSL
2013/07/01 PHP
PHP实现的简单操作SQLite数据库类与用法示例
2017/06/19 PHP
用jscript启动sqlserver
2007/06/21 Javascript
JavaScript 对话框和状态栏使用说明
2009/10/25 Javascript
javascript计算当月剩余天数(天数计算器)示例代码
2014/01/09 Javascript
JavaScript动态修改背景颜色的方法
2015/04/16 Javascript
javascript实现textarea中tab键的缩排处理方法
2015/06/26 Javascript
JavaScript类型系统之正则表达式
2016/01/05 Javascript
每日十条JavaScript经验技巧(一)
2016/06/23 Javascript
微信小程序 教程之小程序配置
2016/10/17 Javascript
React实现点击删除列表中对应项
2017/01/10 Javascript
nginx配置React静态页面的方法教程
2017/11/03 Javascript
详解Vue 动态组件与全局事件绑定总结
2018/11/11 Javascript
微信小程序scroll-view隐藏滚动条的方法详解
2020/03/25 Javascript
vue实现购物车加减
2020/05/30 Javascript
解决vue-router 切换tab标签关闭时缓存问题
2020/07/22 Javascript
vue实现移动端input上传视频、音频
2020/08/18 Javascript
vue实现几秒后跳转新页面代码
2020/09/09 Javascript
微信小程序抽奖组件的使用步骤
2021/01/11 Javascript
微信小程序实现点赞业务
2021/02/10 Javascript
Python3基础之函数用法
2014/08/13 Python
详解Python字符串对象的实现
2015/12/24 Python
python xml解析实例详解
2016/11/14 Python
深入浅析Python的类
2018/06/22 Python
Pythony运维入门之Socket网络编程详解
2019/04/15 Python
tensorflow的ckpt及pb模型持久化方式及转化详解
2020/02/12 Python
keras的load_model实现加载含有参数的自定义模型
2020/06/22 Python
浅谈TensorFlow中读取图像数据的三种方式
2020/06/30 Python
基于第一个PhoneGap(cordova)的应用详解
2013/05/03 HTML / CSS
html5中audio支持音频格式的解决方法
2018/08/24 HTML / CSS
英国男女奢华内衣和泳装购物网站:Figleaves
2017/01/28 全球购物
澳大利亚最受欢迎的美发和美容在线商店:Catwalk
2018/12/12 全球购物
简历自我评价怎么写呢?
2014/01/06 职场文书
省级优秀毕业生主要事迹
2014/05/29 职场文书
关于实现中国梦的心得体会
2016/01/05 职场文书
Python爬取科目四考试题库的方法实现
2021/03/30 Python