慢慢发现 Python 输出里一些好玩儿的奇技淫巧,一条一条列出来,发现了新的会更新补上。python
如今命令行中输出彩色的信息,须要在输出以前设定颜色,以后再将颜色恢复,不然就一直彩色下去啦。命令行
COLOR_CODES = { 'debug': '\033[1;34m', # blue 'info': '\033[1;32m', # green 'warning': '\033[1;33m', # yellow 'error': '\033[1;31m', # red 'critical': '\033[1;41m', # background red } RESET_COLOR = '\033[0m' def color_msg(level, msg): return COLOR_CODES[level] + msg + RESET_COLOR
进度条实现起来呢,主要就是每次输出不换行,而后在一行输出完成以后让光标回到行首从新输出,这里用到 '\r'
来使光标 回车
。记得 print
以后加上 ','
避免换行,以及及时刷新输出。debug
import sys import time for i in range(10): print '\r%s' % i, sys.stdout.flush() time.sleep(0.5)
有了这种输出的特殊技巧,想造出什么样的进度条就看心情咯~~code
看!跑马灯!it
from collections import deque import sys import time loading = deque('>---------------') while 1: print '\r%s' % ''.join(loading), loading.rotate() sys.stdout.flush() time.sleep(0.1)