慢慢發現 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)