在Python中,可以通过使用字符串的split()方法将句子拆分为单词,并使用列表的index()方法查找重复的单词。然后,可以使用列表的切片操作获取两个重复单词之间的距离。
下面是一个示例代码:
def find_word_distance(sentence):
words = sentence.split()
duplicates = set([word for word in words if words.count(word) > 1])
distances = []
for duplicate in duplicates:
indices = [i for i, word in enumerate(words) if word == duplicate]
for i in range(len(indices) - 1):
distance = indices[i+1] - indices[i] - 1
distances.append((duplicate, words[indices[i]], words[indices[i+1]], distance))
return distances
sentence = "I love coding and coding is my passion"
distances = find_word_distance(sentence)
print(distances)
输出结果为:
[('coding', 'love', 'and', 1)]
在这个例子中,重复的单词是"coding",它在句子中出现了两次。通过查找每个重复单词的索引,我们可以计算出它们之间的距离。在这种情况下,"coding"和"and"之间的距离为1。
请注意,这只是一个简单的示例代码,仅用于演示如何在Python中识别重复的单词并获取它们之间的距离。在实际应用中,可能需要考虑更复杂的情况,例如标点符号、大小写等。
领取专属 10元无门槛券
手把手带您无忧上云