Python | 更改外壳中的文字颜色
发布于 2021-01-29 18:59:21
我想知道是否有人知道如何设置显示在外壳中的文本的颜色。我注意到“
ls”在将信息打印到屏幕上(在Linux盒子上)时使用了几种不同的颜色,想知道我是否可以在Python中利用它。
关注者
0
被浏览
45
1 个回答
-
使用Curses或ANSI转义序列。开始喷射转义序列之前,应检查stdout是tty。您可以使用
sys.stdout.isatty()
。这是一个从我的项目中提取的函数,该函数使用ANSI转义序列根据状态以红色或绿色打印输出:def hilite(string, status, bold): attr = [] if status: # green attr.append('32') else: # red attr.append('31') if bold: attr.append('1') return '\x1b[%sm%s\x1b[0m' % (';'.join(attr), string)