python中停止字的实现
python中停止词列表的速度更快的是:python中停止字的实现,python,Python,python中停止词列表的速度更快的是: stopwords = ('a','and', 'etc') 或者使用文件来调用它?文件操作总是比正常代码执行慢得多。因此,如果您需要的数据足够小,请不要使用文件 如果满足以下任一条件,则使用文件: 需要修改输入数据而不更改实际代码 需要处理的大量数据 数据正由另一个进程/应用程序提供 如果你只有有限数量的停止词,如果你不需要经常改变它们,那么就始终使用它 stopwords = ('a','and', 'etc') 文件操作总是比正常代码执行
stopwords = ('a','and', 'etc')
或者使用文件来调用它?文件操作总是比正常代码执行慢得多。因此,如果您需要的数据足够小,请不要使用文件 如果满足以下任一条件,则使用文件:
- 需要修改输入数据而不更改实际代码
- 需要处理的大量数据
- 数据正由另一个进程/应用程序提供
stopwords = ('a','and', 'etc')
文件操作总是比正常代码执行慢得多。因此,如果您需要的数据足够小,请不要使用文件 如果满足以下任一条件,则使用文件:
- 需要修改输入数据而不更改实际代码
- 需要处理的大量数据
- 数据正由另一个进程/应用程序提供
stopwords = ('a','and', 'etc')
NLTK
将停止字作为列表
nltk.corpus.stopwords.words('english')
如果这是您的意思,那么它比使用文件并在查看停止字时从中读取要快。
NLTK
将停止字作为列表
nltk.corpus.stopwords.words('english')
如果这是您的意思,那么它比使用文件并在浏览stopword时从中读取要快。如果您不想下载
nltk
,stopword文件随处可见。他们通常每行列出一个单词,这样就很容易把它们放在自己的结构中
stopwords = ()
for line in open('stopwordfile'):
stopwords += (line,)
但是,比在元组中查找单词更快的是使用字典,可能最好使用默认返回值:
stopdict = {w:True for w in stopwords}
for word in text_you_want_to_index:
if word not in stopdict: # or: not stopdict.get(word, False): don't know which one more performant
print word
如果您不想下载
nltk
,stopword文件随处可见。他们通常每行列出一个单词,这样就很容易把它们放在自己的结构中
stopwords = ()
for line in open('stopwordfile'):
stopwords += (line,)
但是,比在元组中查找单词更快的是使用字典,可能最好使用默认返回值:
stopdict = {w:True for w in stopwords}
for word in text_you_want_to_index:
if word not in stopdict: # or: not stopdict.get(word, False): don't know which one more performant
print word
你应该更具体一点-你打算用
stopwords
做什么?只是想澄清一下,你是在问:哪个在运行时运行得更快:创建一个列表(或元组)文本,或者从一个文件中读取列表?你到底想做什么?你应该更具体一些-你打算用停止字
做什么?只是想澄清一下,你在问:哪一个在运行时运行得更快:创建一个列表(或元组)文字,或者从文件中读取列表?你到底想做什么?set
在这里更合适。我同意。我们甚至可以更进一步,建议使用frozenset
,因为一旦设置,就不需要添加或删除元素。set
在这里更合适。我同意。我们甚至可以更进一步,建议使用frozenset
,因为一旦设置好,就不需要添加或删除元素。