nltk 停用词的 for 循环趋于无穷大

for loop for nltk stopwords goes to infinity

import nltk as nt

txt="The latest version of Anaconda comes with Python 3.8. But sometimes you need to use an earlier release. With Anaconda, the preferred way to use a previous version of Python is to create a separate conda environment for each project."

word_tok=nt.word_tokenize(txt)
stopWords=nt.corpus.stopwords.words("english")
print(word_tok)

wordClear=[]
for i in word_tok: # infinity loop
      if i not in stopWords:
        word_tok.append(i)

有什么问题?

我看到的总是向上陈述的形式,但我的项目的这种形式是无限循环但是

for i in word_tok:
  print(i)

这不是无限循环。

import nltk as nt

txt="The latest version of Anaconda comes with Python 3.8. But sometimes you need to use an earlier release. With Anaconda, the preferred way to use a previous version of Python is to create a separate conda environment for each project."

word_tok=nt.word_tokenize(txt)
stopWords=nt.corpus.stopwords.words("english")
print(word_tok)

wordClear=[]
for i in word_tok: # infinity loop
      if i not in stopWords:
        # Do you wantthis?
        wordClear.append(i)

您正在更新数组 word_tok 并动态添加新的 i。所以它可能会继续增加并且永远不会结束。