Mil*_*ano 3 python error-handling global-variables
我有全局变量的问题.它返回错误
search = Search.Search(pattern,b)
NameError: global name 'b' is not defined
Run Code Online (Sandbox Code Playgroud)
但我已经定义了这个全局变量.我试着把它放到搜索功能中.我认为在Windows上没有问题.我正在尝试在Linux/Unix上运行这个程序.
您对如何避免此错误有任何建议吗?
# -*- coding: utf-8 -*-
from flask import Flask
from flask import request
from flask import render_template
import Search
import B
app = Flask(__name__)
global b
@app.route('/')
def my_form():
return render_template('my-form.html')
def setup():
global b
b = B.B()
@app.route('/', methods=['POST'])
def search():
global b
from time import time
pattern = request.form['text']
...
se = Search.Search(pattern,b)
...
...
...
app.debug=True
if __name__ == '__main__':
setup()
app.run()
Run Code Online (Sandbox Code Playgroud)
Kev*_*vin 11
app = Flask(__name__)
global b
Run Code Online (Sandbox Code Playgroud)
global b这里的声明实际上并没有为您创建变量.你需要自己分配一些东西.
app = Flask(__name__)
b = None #or whatever you want the starting value to be
Run Code Online (Sandbox Code Playgroud)