📅  最后修改于: 2023-12-03 15:37:37.481000             🧑  作者: Mango
当我们处理文本时,经常遇到需要查找字符串中是否有重复的单词的需求。使用字典(Dictionary)是一种高效的方法来实现该功能。
下面是一个简单的实现:
def first_duplicate_word(text):
words = text.split()
seen = {}
for word in words:
word = word.lower()
if word in seen:
return word
seen[word] = True
return None
该函数的实现很简单,首先将输入的字符串 text
拆分成单词列表 words
,然后使用一个字典 seen
来记录已经遍历过的单词,字典中的键是单词,值是 True。对于每个单词,我们将其转换为小写形式,并判断其是否已经存在于字典中,如果是则说明找到了第一个重复的单词,直接返回该单词。如果遍历完所有单词都没有找到重复的单词,则返回 None。
我们来测试一下这个函数:
text = "Hello world Hello"
print(first_duplicate_word(text)) # 输出: 'hello'
text = "A rose by any other name would smell as sweet"
print(first_duplicate_word(text)) # 输出: 'as'
上述代码的输出符合我们的预期。
使用字典查找字符串中第一个重复的单词是一种常用技巧,可以帮助我们高效地处理文本数据。