Has*_*ash 6 python nltk importerror
我试图使用 PunktWordTokenizer,但发生了如下错误。
from nltk.tokenize.punkt import PunktWordTokenizer
Run Code Online (Sandbox Code Playgroud)
这给出了以下错误消息。
Traceback (most recent call last): File "file", line 5, in <module>
from nltk.tokenize.punkt import PunktWordTokenizer ImportError: cannot import name PunktWordTokenizer
Run Code Online (Sandbox Code Playgroud)
我已经检查过 nltk 是否已安装,并且 PunkWordTokenzer 也已使用 nltk.download() 安装。需要一些帮助。
PunktWordTokenizer 以前向用户公开,但不再公开。您可以使用 WordPunctTokenizer。
from nltk.tokenize import WordPunctTokenizer
WordPunctTokenizer().tokenize(“text to tokenize”)
Run Code Online (Sandbox Code Playgroud)
区别在于:
PunktWordTokenizer 在标点符号上拆分,但与单词保持一致。WordPunctTokenizer 将所有标点符号拆分为单独的标记。
例如,给定输入:这是一个测试
PunktWordTokenizer: [‘This’, “‘s”, ‘a’, ‘test’]
WordPunctTokenizer: [‘This’, “‘”, ‘s’, ‘a’, ‘test’]
Run Code Online (Sandbox Code Playgroud)
3.0.2 中似乎存在与 PunktWordTokenizer 相关的回归。该问题在 3.0.1 中不存在,回滚到该版本或更早版本修复了该问题。
>>> import nltk
>>> nltk.__version__
'3.0.2'
>>> from nltk.tokenize import PunktWordTokenizer
Traceback (most recent call last):
File "<stdin>", line 1, in <module>
ImportError: cannot import name PunktWordTokenizer
Run Code Online (Sandbox Code Playgroud)
为了解决这个问题,请尝试pip install -U nltk升级您的 NLTK 版本。
| 归档时间: |
|
| 查看次数: |
4995 次 |
| 最近记录: |