📜  从文本文件中获取词汇 python (1)

📅  最后修改于: 2023-12-03 15:21:59.636000             🧑  作者: Mango

从文本文件中获取词汇 Python

简介

在Python中,我们可以用不同的方法从文本文件中获取词汇。这篇文章将介绍一些常见的方法,供程序员参考。

读取文件

首先,我们需要先打开文件并读取其中的内容。下面是一个简单的示例代码:

filename = 'text.txt'
with open(filename) as f:
  text = f.read()

这个代码片段打开名为 text.txt 的文件,并将文件内容读到一个字符串变量 text 中。当然,你可以将文件名替换为你自己的文件名。

分词

接下来,我们需要从读取到的文本中分离出词汇。最常见的方法是使用Python的内置 split 方法。这个方法会使用空格作为分隔符,将字符串分割成单独的单词。

words = text.split()

这样,我们就将文本分成了一个包含所有单词的列表。

去除标点符号和转换为小写

我们需要将文本中的标点符号和大写字母去除,并将所有单词转换为小写,以便于我们进行比较和统计词频。可以使用 string 模块中的方法来做到这一点。

import string

# 去除标点符号和转换为小写
words = [word.strip(string.punctuation).lower() for word in words]

这个代码片段使用列表解析表达式,循环遍历 words 列表中的每个单词,并使用 string.punctuation 方法去除每个单词中的标点符号。然后,使用 lower() 方法将单词转换为小写。

统计词频

最后,我们可以使用 collections 模块中的 Counter 方法来统计每个单词出现的次数,并将结果存储在另一个字典中。

from collections import Counter

# 统计词频
word_counts = Counter(words)

这个代码片段使用 Counter 对象统计每个单词出现的次数,并将结果以字典的形式存储在 word_counts 变量中。

结论

综上所述,我们可以用以下代码获取文本文件中的词汇,并统计每个单词出现的频率:

import string
from collections import Counter

filename = 'text.txt'
with open(filename) as f:
  text = f.read()

# 分词
words = text.split()

# 去除标点符号和转换为小写
words = [word.strip(string.punctuation).lower() for word in words]

# 统计词频
word_counts = Counter(words)
print(word_counts)

这个代码片段中涉及到了文件读取,分词,去除标点符号和转换为小写字母,以及统计词频,是Python处理文本数据中常见的操作之一。