python中一函数取用另一函数值


@app.route('/login',methods=['GET','POST'])
def login():
    if request.method == 'GET':
        return render_template('login.html')

    code = request.form.get('code','')
    code_string = request.session.get('image_code')
    print(code_string)
    if code.upper() != code_string.upper():
        miss = '验证码错误'
        return render_template('login.html',miss=miss)
@app.route('/image/code/')
def image_code():
    img,code_string = check_code()
    # request.session[image_code]=code_string
    # request.session.set_expiry(60)
    print(code_string)

    stream = BytesIO()
    img.save(stream,'png')
    response = make_response(stream.getvalue())
    return response

有没有函数在login()中code_string可以直接取用image_code()中code_string的值,而不是再次调用image_code(),那样check_code()会再次执行,img和code_string会发生改变,image_code中return返回的是img图片显示在html中

img

你直接在 image_code 的code_string 参数前加上 global ,使它成为全局参数