python - Nltk json数据加载错误

标签 python json python-3.x nltk

我正在尝试加载 json 数据文件以便使用 nltk 框架对其进行分析,但出现 AttributeError: 'list' object has no attribute 'keys'。我尝试删除末尾的“json”部分,因为文档指出数据类型是由文件扩展名自动检测的。一开始也尝试过删除数据库,但无济于事。有什么想法我可能会在哪里绊倒吗?

import json
import nltk

database = nltk.data.load("data.json", "json")

最佳答案

经过几个小时的研究,结果发现如果最高顺序是列表而不是字典,NLTK 不接受 json 文件。为了访问数据,最上面的结构必须是带有键的字典结构。

jsonfile = open('data.json')
jsonstr = jsonfile.read()
jdata = json.loads(jsonstr)[0]

这允许访问列表中的第一个元素,其中包含一个字典,类似于列表中的所有其他元素。一种解决方案是分离列表的元素并一次加载一个字典。我还怀疑在编码 json 时, sort_keys = True 可能会使最上面的结构成为字典。

关于python - Nltk json数据加载错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/45622509/

相关文章:

python - 示例请求 : unsupervised deep learning in python

c# - 用对象数组修补对象

javascript - 将数据从 Flask 传递到 javascript 作为 json 无法从单独的 .js 文件中工作

javascript - 无法使用 promise 命令 js 函数执行

python - Sockjs-tornado 和 rpc

python - Numpy savetxt 到一个字符串

python-3.x - Adafruit 树莓派 neopixel 库抛出错误 "ImportError: No module named _rpi_ws281x"

python-3.x - 自动选型

python - 如何在 Python 3 中创建具有大指数的 Decimal?

python - 在 pyspark 中不使用 pivot 进行分组的有效方法