nltk_data的默认路径和自定义路径冲突



我知道nltk_data应该有两个不同的目录:一个用于默认下载,另一个用于用户的自定义文件。

在我的macOS设置中,我手动检查了所有默认数据包是否都在/usr/local/share/nltk_data,这就是next(p for p in nltk.data.path if os.path.exists(p))的结果。

但是,当我尝试下载另一个默认包时,它不会转到该目录,而是转到/Users/macbook/nltk_data,在那里我明白只有我的自定义文件应该在那里。并且测试默认nltk.corpus.brown.words()的安装程序失败,因为它在我的自定义路径中查找它:'No such file or directory: '/Users/macbook/nltk_data/corpora/brown/ca01'

我正在使用Python 3.6.3,conda 4.4.8,print(nltk.data.path)的结果是

['/Users/macbook/nltk_data', '/usr/share/nltk_data', '/usr/local/share/nltk_data', '/usr/lib/nltk_data', '/usr/local/lib/nltk_data', '/Users/macbook/anaconda3/nltk_data', '/

Users/macbook/anaconda3/lib/nltk_data', '/usr/local/share/nltk_data']

您可以下载任何软件包,如下所示:

nltk.download('treebank', download_dir='/home/username/data/treebank')

你可以告诉nltk在自定义目录中查找以下行:

nltk.data.path.append("path_to_custom_directory ")

最新更新