【问题标题】:can you use pydictionary in google app engine?你可以在谷歌应用引擎中使用字典吗?
【发布时间】:2016-02-27 23:20:35
【问题描述】:

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

这是错误:

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

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

这是该函数的代码:

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]

它可以在应用引擎项目之外工作,但不能在内部......

【问题讨论】:

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


    【解决方案1】:

    您应该返回并查看您的异常并尝试了解它告诉您的内容。

    searching.py", line 63, in   getkey assert isinstance(word.keys, object)
    
    AttributeError: 'NoneType' object has no attribute 'keys'
    

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

    发生该错误意味着word 引用的值是无。

    这表示word = dictionary.meaning(term)的结果

    None

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

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

    一些基本的调试在这里会大有帮助,帮助您诊断问题。

    【讨论】:

    • 感谢您提供的调试技巧……它有所帮助。目标是获取存储在术语中的单词的含义。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2021-05-13
    • 1970-01-01
    • 2018-11-21
    • 1970-01-01
    • 2017-04-05
    • 2011-05-06
    相关资源
    最近更新 更多