给定一个字符串,“pattern“,那这个字符串的pattern就是0.1.2.2.3.4.5
这和字符串的index有关,需要判断后续的字符是否之前出现过,所以需要使用另一个数据类型来存储遍历过的字符
def get_word_pattern(string):
pattern=[]
#使用一个字典来存储遍历过的字符和其index,每次遍历后需要先判断字符是否在这个字典中,如果只需要字符,则可以使用列表,如果既要字符还要其他如index,可以使用字典存储
pattern_dic={}
index=0
for char in string.upper():
if char not in pattern_dic:
pattern.append(str(index))
pattern_dic[char]=index
index+=1
else:
pattern.append(str(pattern_dic[char]))
return '.'.join(pattern)
运行结果:
0.1.2.2.3.4.5