Python NLTK 对齐导入错误

Python NLTK align import error

我收到一个关于 NLTK 对齐模块的奇怪导入错误:

$ python2 --version
Python 2.7.10
$ pip2 freeze | grep nltk
nltk==3.2
$ python2
Python 2.7.10 (default, Oct 23 2015, 18:05:06) 
[GCC 4.2.1 Compatible Apple LLVM 7.0.0 (clang-700.0.59.5)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> import nltk
>>> from nltk.align import AlignedSent
Traceback (most recent call last):
  File "<stdin>", line 1, in <module>
ImportError: No module named align

如您所见,我为 python 2.7 安装了 nltk 3.2。我可以直接导入nltk。但是,我无法访问 align 模块。

我知道我使用的 import 语句是正确的,因为我直接从 the official documentation. Additionally, I looked at the interface changes from NLTK 2 to NLTK 3 中获取它并且没有提到 align 模块。


为什么会发生这种情况,我该如何解决?

从 NLTK 3.2 版开始,align 模块已 renamed to translate。因此使用:

from nltk.translate import AlignedSent