更改句子中某些单词的颜色

时间:2016-05-25 09:52:38

标签: python string

我在Python中有一个字符串。

string ="Marry had. A little lamb"

和一个字符串,其中包含第一个字符串中的一些单词

part="had. lamb"

我需要打印第一个字符串并更改第二个字符串中单词的颜色。

我现在的位置。

class c:
    blue = '\033[94m'
    red =  '\033[93m'

string ="Marry had. A little lamb"
part =" had. lamb"

pos= [string.split().index(t) for t in part.split()]
print(pos) # prints [1, 4]
print c.blue+(string) #prints string in blue needs to print 1 and 4 from pos in red

1 个答案:

答案 0 :(得分:2)

看起来你过于复杂了。 splitparts更改为列表,然后迭代string中的单个字词并测试它们是否出现在parts中,似乎只需要这样做:

>>> partwords = part.split()
>>> for w in string.split():
...   if w in partwords:
...     print c.red+w,
...   else:
...     print c.blue+w,

结果(是的,您的转义码是黄色的,不是红色的):

Marry in colour