Python控制台输出字体颜色及背景设置

python 可以利用命令输出带有特效的控制台字体

基础语法

Python利用'\033[<style CODE>;<fore color CODE>;< back color CODE>m'+str 生成ANSI字符代码,将str用各种颜色打印到终端。

  • \033[<style CODE>;<fore color CODE>;< back color CODE>m将终端输出效果延续到下一次出现\033[<style CODE>;<fore color CODE>;< back color CODE>m重新设置;
  • \033[<style CODE>;<fore color CODE>;< back color CODE>m输出效果是跨行的。
  • 不满足\033[<style CODE>;<fore color CODE>;< back color CODE>m格式的,由于前景色与背景色所属数字区段不同,将根据字符m前数字自动设置。
style CODE 效果
0 默认
1 粗体
4 下划线
7 反白显示(fore 与 back 颜色互换)

fore color CODE 效果 fore color CODE 效果(not part of the standard)
30 BLACK 90 LIGHTBLACK_EX
31 RED 91 LIGHTRED_EX
32 GREEN 92 LIGHTGREEN_EX
33 YELLOW 93 LIGHTYELLOW_EX
34 BLUE 94 LIGHTBLUE_EX
35 MAGENTA 95 LIGHTMAGENTA_EX
36 CYAN 96 LIGHTCYAN_EX
37 WHITE 97 LIGHTWHITE_EX
39 RESET

back color CODE 效果 back color CODE 效果(not part of the standard)
40 BLACK 100 LIGHTBLACK_EX
41 RED 101 LIGHTRED_EX
42 GREEN 102 LIGHTGREEN_EX
43 YELLOW 103 LIGHTYELLOW_EX
44 BLUE 104 LIGHTBLUE_EX
45 MAGENTA 105 LIGHTMAGENTA_EX
46 CYAN 106 LIGHTCYAN_EX
47 WHITE 107 LIGHTWHITE_EX
49 RESET

代码示例

print('*'*20+'前景色'+'*'*20)
print('\033[0;31;40m'+'hello color'+'\033[0m')
print('\033[0;91;100m'+'hello color'+'\033[0m')
print('\033[0;32;40m'+'hello color'+'\033[0m')
print('\033[0;33;40m'+'hello color'+'\033[0m')
print('\033[0;34;40m'+'hello color'+'\033[0m')
print('\033[0;35;40m'+'hello color'+'\033[0m')
print('\033[0;36;40m'+'hello color'+'\033[0m')
print('\033[0;37;40m'+'hello color'+'\033[0m')
print('\033[0;39;40m'+'hello color'+'\033[0m')
print('*'*20+'背景色'+'*'*20)
print('\033[1;30;41m'+'hello color'+'\033[0m')
print('\033[1;30;42m'+'hello color'+'\033[0m')
print('\033[1;30;43m'+'hello color'+'\033[0m')
print('\033[1;30;44m'+'hello color'+'\033[0m')
print('\033[1;30;45m'+'hello color'+'\033[0m')
print('\033[1;30;46m'+'hello color'+'\033[0m')
print('\033[1;30;47m'+'hello color'+'\033[0m')

print('*'*20+'模式'+'*'*20)
print('\033[0;31;40m'+'hello color'+'\033[0m')
print('\033[1;31;40m'+'hello color'+'\033[0m')
print('\033[4;31;40m'+'hello color'+'\033[0m')
print('\033[7;31;40m'+'hello color'+'\033[0m')

print('*'*20+'简易命令'+'*'*20)
print('\033[1m'+'hello color'+'\033[0m')
print('\033[1;92m'+'hello color'+'\033[0m')
print('\033[31m'+'hello color'+'\033[0m')
print('\033[41m'+'hello color'+'\033[0m')

print('*'*20+'不换行'+'*'*20)
print('\033[0;33;40m'+'hello color')
print('新行')

输出效果

posted @ 2021-12-01 21:50  DGON  阅读(1061)  评论(0编辑  收藏  举报