📜  Python过滤重复单词(1)

📅  最后修改于: 2023-12-03 14:46:47.904000             🧑  作者: Mango

Python过滤重复单词

在处理文本的时候,有时需要过滤重复的单词,以便进行下一步的操作。Python是一门非常强大的编程语言,提供了多种方法来实现这个功能。

方法一:使用set(集合)去重

set是Python内建的数据结构,用于表示无序、不重复的集合。因此,可以使用set来去重。具体实现代码如下:

text = "hello world world world"
words = text.split()  # 将文本划分为单词列表
unique_words = set(words)  # 使用set去重

print("去重后的单词:", unique_words)

输出结果如下:

去重后的单词: {'hello', 'world'}
方法二:使用Counter统计单词出现次数

Counter是Python内建的高效数据结构,用于统计元素出现的次数。可以使用Counter来统计单词出现的次数,并过滤掉出现次数大于1的单词。具体实现代码如下:

from collections import Counter

text = "hello world world world"
words = text.split()  # 将文本划分为单词列表
word_counts = Counter(words)  # 统计单词出现次数

unique_words = [word for word, count in word_counts.items() if count == 1]  # 过滤掉出现次数大于1的单词

print("去重后的单词:", unique_words)

输出结果如下:

去重后的单词: ['hello']
方法三:使用dict去重

dict是Python内建的另一种数据结构,用于表示键值对。可以使用dict来去重。具体实现代码如下:

text = "hello world world world"
words = text.split()  # 将文本划分为单词列表

unique_words = list(dict.fromkeys(words))  # 使用dict去重

print("去重后的单词:", unique_words)

输出结果如下:

去重后的单词: ['hello', 'world']

以上三种方法都可以实现过滤重复单词的功能,可以根据实际情况选择合适的方法。