如何使用python打印以彩色打印。例如
print('This should be red')
print('This should be green')
现在一切都是黑色背景上的白色文字。如果有帮助,我会使用ubuntu。
答案 0 :(得分:17)
定义这样的颜色:
W = '\033[0m' # white (normal)
R = '\033[31m' # red
G = '\033[32m' # green
O = '\033[33m' # orange
B = '\033[34m' # blue
P = '\033[35m' # purple
print(R+"hello how are you"+W)
演示:
在此处查看所有颜色代码:Color Codes
答案 1 :(得分:1)
使用colorconsole
之类的模块更容易:
pip install colorconsole
然后,例如
from colorconsole import terminal
screen = terminal.get_terminal(conEmu=False)
screen.cprint(4, 0, "This is red\n")
screen.cprint(10, 0, "This is light green\n")
screen.cprint(0, 11, "This is black on light cyan\n")
screen.reset_colors()
如果可用,它还支持256/24位颜色。
答案 2 :(得分:1)
下面是我发现有用的便捷功能。它将以标准RGB元组指定的所需前景色和背景色打印您提供的文本,因此您不必记住ANSI代码。要查找您可能要使用的RGB值,可以使用https://www.w3schools.com/colors/colors_picker.asp上的颜色选择器。
def print_in_color(txt_msg,fore_tupple,back_tupple,):
#prints the text_msg in the foreground color specified by fore_tupple with the background specified by back_tupple
#text_msg is the text, fore_tupple is foregroud color tupple (r,g,b), back_tupple is background tupple (r,g,b)
rf,gf,bf=fore_tupple
rb,gb,bb=back_tupple
msg='{0}' + txt_msg
mat='\33[38;2;' + str(rf) +';' + str(gf) + ';' + str(bf) + ';48;2;' + str(rb) + ';' +str(gb) + ';' + str(bb) +'m'
print(msg .format(mat))
print('\33[0m') # returns default print color to back to black
# example of use using a message with variables
fore_color='cyan'
back_color='dark green'
msg='foreground color is {0} and the background color is {1}'.format(fore_color, back_color)
print_in_color(msg, (0,255,255),(0,127,127))
答案 3 :(得分:0)
使用彩色模块。
import colored
color = colored.fg(196) #orange
print(color + "This text is orange")
答案 4 :(得分:0)
在此使用此功能:它具有颜色:红色,蓝色,绿色
colors = {'red':'\033[31m', 'blue':'\033[34m', 'green':'\033[32m'}
def colorprint(string, text_color = 'default', bold = False, underline = False):
if underline == True:
string = '\033[4m' + string
if bold == True:
string = '\033[1m' + string
if text_color == 'default' or text_color in colors:
for color in colors:
if text_color == color:
string = colors[color] + string
else:
raise ValueError ("Colors not in:", colors.keys())
print(string + '\033[0m')