python找出给定字符串中相同单词
时间: 2023-11-26 18:04:40 浏览: 213
可以使用Python的split()函数将字符串按照空格分割成单词列表,然后使用Python的Counter类统计每个单词出现的次数,最后筛选出出现次数大于1的单词,即为给定字符串中相同的单词。以下是示例代码:
```python
from collections import Counter
def find_same_words(s):
words = s.split()
counter = Counter(words)
return [w for w in counter if counter[w] > 1]
s = "hello world hello python world python python"
print(find_same_words(s)) # 输出 ['hello', 'world', 'python']
```
这段代码会输出给定字符串中出现次数大于1的单词列表,即 `['hello', 'world', 'python']`。
相关问题
python找出给定字符 串中第一个重复的单词
可以通过以下代码实现:
```python
def find_first_duplicate_word(text):
words = text.split()
seen_words = set()
for word in words:
if word in seen_words:
return word
else:
seen_words.add(word)
return None
```
这个函数将给定文本分割成单词,然后遍历每个单词,如果它已经在之前出现过,则返回该单词。如果遍历完所有单词后没有发现重复单词,则返回 None。
用python输入程序:在给定的字符串中,包含多个相同的单词,统计出现两次以上的单词。用python标准库中的函数实现
可以使用Python的collections模块中的Counter类来实现。
以下是一个示例代码:
```python
from collections import Counter
def count_duplicate_words(sentence):
# 将句子分割成单词列表
words = sentence.split()
# 使用Counter类统计每个单词出现的次数
word_counts = Counter(words)
# 找出出现两次及以上的单词
duplicate_words = [word for word, count in word_counts.items() if count >= 2]
return duplicate_words
# 示例用法
sentence = "this is a test sentence with is and test appearing more than once"
print(count_duplicate_words(sentence)) # 输出 ['is', 'test', 'with', 'and', 'once']
```
在上面的示例中,我们首先使用split()函数将输入句子分割成单词列表,然后使用Counter类统计每个单词出现的次数。最后,我们通过列表推导式找出出现两次及以上的单词,并返回结果。
阅读全文