我不知道为什么在将变量发送到 HTML 时显示 UnboundLocalError。我尝试了类似的 Stackoverflow 解决方案,但没有解决
I don't know why while sending the variable to HTML it is showing UnboundLocalError. I tried similar Stackoverflow solution but it didn't solve
我不知道为什么在将变量发送到 HTML 时显示 UnboundLocalError: local variable 'prdct' referenced before assignment.
当我不从 render_template() 方法传递任何值时,代码 运行 没问题。我使用 print(prdct) 打印的输出也工作正常。
以下是我的代码:
您的代码在执行函数时不会在所有情况下都创建 prdct
。只有当您使用 request.Method = "POST"
输入时,它才会起作用。
你不能无条件地 return 一些可能尚未创建的东西:
def test():
if False:
k = 42
return k
test()
将在您的代码中引发不同的错误 - 原因相似。
不满足 if
条件,从未创建 k = 42
- 因此您不能 return 在所有可能的情况下。
您的问题是,如果 predict.py,其中的任何函数被调用时使用 POST 以外的 http 请求,则 prdct
变量未定义。
您有两个选择:
在比 POST 方法条件更高的范围内定义 prdct = None
将特定的 return 语句移到 POST 方法条件块中
我不知道为什么在将变量发送到 HTML 时显示 UnboundLocalError: local variable 'prdct' referenced before assignment.
当我不从 render_template() 方法传递任何值时,代码 运行 没问题。我使用 print(prdct) 打印的输出也工作正常。
以下是我的代码:
您的代码在执行函数时不会在所有情况下都创建 prdct
。只有当您使用 request.Method = "POST"
输入时,它才会起作用。
你不能无条件地 return 一些可能尚未创建的东西:
def test():
if False:
k = 42
return k
test()
将在您的代码中引发不同的错误 - 原因相似。
不满足 if
条件,从未创建 k = 42
- 因此您不能 return 在所有可能的情况下。
您的问题是,如果 predict.py,其中的任何函数被调用时使用 POST 以外的 http 请求,则 prdct
变量未定义。
您有两个选择:
在比 POST 方法条件更高的范围内定义
prdct = None
将特定的 return 语句移到 POST 方法条件块中