你可以在谷歌应用引擎中使用pydictionary吗?

时间:2016-02-27 23:20:36

标签: python google-app-engine google-app-engine-python

我正在尝试在谷歌应用引擎应用程序中使用pyDictionary但我收到错误。当我在谷歌应用程序之外使用它时,我没有收到此错误。我已将它添加为第三方库(正确),因此它实际上导入它没有错误,所以我不知道为什么。

这是错误:

def getkey(term):
    dictionary = PyDictionary()
    word = dictionary.meaning(term)
    assert isinstance(word.keys, object)
    results = word.keys()
    newresults = []
    for result in results:
        newresults.append(str(result))
    return newresults[0]

这是该函数的代码:

LIMIT $start, 10

它在app引擎项目之外工作,但不在内部......

1 个答案:

答案 0 :(得分:0)

你应该回去查看你的异常并尝试理解它告诉你的内容。

searching.py", line 63, in   getkey assert isinstance(word.keys, object)

AttributeError: 'NoneType' object has no attribute 'keys'

让我们通过你的代码追溯它。

发生该错误意味着word引用的值为None。

这意味着word = dictionary.meaning(term)

的结果

None

因此,您应该看看term的价值是什么。

您是否确认term在任何地方都有意义?如果是,dictionary.meaning(term)的预期结果是什么,然后调查为什么没有得到预期的结果。

一些基本的调试将在很长的路要走,帮助您诊断问题。