NameError:未定义名称“询问”

时间:2019-05-06 17:18:05

标签: python flask alexa alexa-skills-kit

烧瓶问题

@ ask.launch问题

我在运行我的python flask脚本时遇到问题。我正在使用python 2.7,错误提示: @ ask.launch中第13行的文件“ C:\ Users \ user1 \ AppData \ Local \ Continuum \ anaconda2 \ Lib \ site-packages \ hello_lumion.py” NameError:名称'ask'未定义

import logging
import os 


from flask import request
from flask import Flask

from flask_ask import Ask, statement, request, context, session, question,  version

import requests


@ask.launch
def welcome():
    return statement ('Welcome to Foo')


app = Flask(__name__)

ask= Ask(app,"/")

logging.getLogger("flask_ask").setLevel(logging.DEBUG)

@ask.intent("Hello")

def hello():
    msg= "hello from lumion"
    return statement (msg)


if __name__ == '__main__':
    port = 9000
    app.run(host='0.0.0.0', port=port)
    app.run(debug=True) 

有关如何克服此问题的任何建议?

1 个答案:

答案 0 :(得分:1)

您正在调用ask,然后再对其进行定义。在您的代码中,您拥有

@ask.launch # ask has not been made
def welcome():
    return statement ('Welcome to Foo')


app = Flask(__name__)

ask= Ask(app,"/") # ask gets made here!

您需要重新排序,以便在您调用ask时已被定义。像这样:

app = Flask(__name__)

ask= Ask(app,"/") # define it first

@ask.launch # now use it
def welcome():
    return statement ('Welcome to Foo')