我试着只对字符串中有超过4个字母的单词执行词缀化。下面代码的期望输出应该是“us”,但是我收到了一个无效的语法错误。
import nltk
from nltk.tokenize import TweetTokenizer
lemmatizer = nltk.stem.WordNetLemmatizer()
w_tokenizer = TweetTokenizer()
wd = w_tokenizer.tokenize(('us americans'))
[lemmatizer.lemmatize(w) for w in wd if len(w)>4 else wd for wd in w]发布于 2022-05-10 16:30:51
你可以试着理解这个列表:
[lemmatizer.lemmatize(w) if len(w)>4 else w for w in wd]然后,如果您想要一个字符串,考虑到输入示例,您可以对字符串使用Python操作:
' '.join([lemmatizer.lemmatize(w) if len(w)>4 else w for w in wd])https://stackoverflow.com/questions/72189892
复制相似问题