我刚在Windows上为Python 2.7安装了termcolor。当我尝试打印彩色文本时,我会得到颜色代码。
from termcolor import colored
print colored('Text text text', 'red')
结果如下:
我在远程管理器上获得了相同的结果,当我尝试将脚本作为独立应用程序运行时。
答案 0 :(得分:25)
要使termcolor中使用的ANSI颜色与windows终端一起使用,您还需要导入/初始化colorama
;
>>> from termcolor import *
>>> cprint('hello', 'red')
←[31mhello←[0m
>>> import colorama
>>> colorama.init()
>>> cprint('hello', 'red')
hello <-- in red color
>>>
答案 1 :(得分:2)
在termcolor2模块中,您必须输入以下内容:
import termcolor2
import colorama
colorama.init()
myText = input("Type a text : ")
color = input("What color you want? : ")
print(termcolor2.colored(myText, color))
就这样...
答案 2 :(得分:0)
完成:
在导入termcolor之前插入:
false
没有工作:
无法解释为什么它起作用,只是我能够比较一种颜色正确起作用的脚本和一个颜色不能正确起作用的脚本。
答案 3 :(得分:0)
一个非常简单的解决方案是创建一个定义颜色的类并在函数中使用它,您不必导入任何模块,只需将其复制并粘贴即可:-
class bcolors:
HEADER = '\033[95m'
OKBLUE = '\033[94m'
OKCYAN = '\033[96m'
OKGREEN = '\033[92m'
WARNING = '\033[93m'
FAIL = '\033[91m'
ENDC = '\033[0m'
BOLD = '\033[1m'
UNDERLINE = '\033[4m'
def c_print(color, text):
if color == "green":
return print(bcolors.OKGREEN + text + bcolors.ENDC)
if color == "cyan":
return print(bcolors.OKCYAN + text + bcolors.ENDC)
if color == "blue":
return print(bcolors.OKBLUE + text + bcolors.ENDC)
line = f"{bcolors.OKCYAN}It will wish you on every start up{bcolors.ENDC}"
c_print("cyan", line)
答案 4 :(得分:-1)
这是我发现对彩色打印有用的简单功能。您不需要进行任何导入,也不必记住复杂的ANSI代码。该函数使用标准的RGB元组定义前景色和背景色。您可以在https://www.google.com/search?q=rgb+color+picker&oq=rgb+color+picker&aqs=chrome..69i57j0l7.5967j0j8&sourceid=chrome&ie=UTF-8
中找到RGB颜色选择器。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))