from colorama import init, Fore
import re
init() # only necessary on Windows
s = "This is a sentence where I talk about interesting stuff like sencha tea."
print re.sub(r'(sen\w+)', Fore.RED + r'\1' + Fore.RESET, s)
import re
colourFormat = '\033[{0}m'
colourStr = colourFormat.format(32)
resetStr = colourFormat.format(0)
s = "This is a sentence where I talk about interesting stuff like sencha tea."
lastMatch = 0
formattedText = ''
for match in re.finditer(r'sen\w+', s):
start, end = match.span()
formattedText += s[lastMatch: start]
formattedText += colourStr
formattedText += s[start: end]
formattedText += resetStr
lastMatch = end
formattedText += s[lastMatch:]
print formattedText
有几种终端颜色包可用,如termstyle或termcolor。我喜欢colorama,它也适用于Windows。在
下面是一个使用colorama做您想做的事情的示例:
要给文本着色,可以使用ANSI转义码。在python中,您将执行以下操作来更改文本的颜色。在
其中code是来自here的值。请注意,0将重置任何更改,30-37是颜色。所以基本上你需要在匹配前插入'\033['+str(code)+'m',然后插入'\033[0m'来重置终端。例如,以下内容将导致打印终端的所有颜色:
^{pr2}$下面是一个你所要求的混乱的例子
相关问题 更多 >
编程相关推荐