【发布时间】:2021-03-16 20:29:33
【问题描述】:
我正在尝试在 Flask 中处理路由路径中的参数:
@app.route('/example/<id>', methods=['GET'])
def tasks(id):
if id == 1:
obj = FirstTask()
elif id == 2:
obj = SecondTask()
elif id == 3:
obj = ThirdTask()
result = obj.start()
return make_response(jsonify({ 'data': { result } }), 200)
运行后出现如下错误:
“赋值前引用的局部变量'obj'”
我从来没有用 Python 编程过,也不知道如何解决这个问题。
【问题讨论】:
-
当您调用
obj.start()时,obj尚未定义,因为您的 if 语句都没有评估为 True。换句话说,您的任何obj = Task()语句都没有被调用。在 if 之前或 else 中定义obj。