Я имею дело с глобальными переменными в Python. Код должен работать нормально, но есть проблема. Я должен использовать глобальную переменную, например класс Back
. При запуске приложения он говорит, что еще не является ни один, который должен быть не верно, потому что вторая строка в setup()
функции - 'back = Back.Back()'
Глобальная переменная - это None вместо экземпляра - Python
# -*- coding: utf-8 -*-
from flask import Flask
from flask import request
from flask import render_template
import Search
import Back
app = Flask(__name__)
global back
back = None
@app.route('/')
def my_form():
return render_template('my-form.html')
def setup():
global back
back = Back.Back()
def is_ascii(s):
return all(ord(c) < 128 for c in s)
@app.route('/', methods=['POST'])
def search():
from time import time
pattern = request.form['text']
startTime = time()
pattern=pattern.lower()
arr = []
if len(pattern)<1:
arr.append('Incorrect input')
currentTime = time()-startTime
return render_template('my-form.html', arr=arr, time=currentTime)
arr = []
search = Search.Search(pattern,back)
results = search.getResults()
..................
return render_template('my-form.html', arr=arr, time=currentTime, pattern=pattern)
app.debug=True
if __name__ == '__main__':
setup()
app.run()
Почему это задняя переменная None вместо экземпляра класса Назад? Спасибо
И как вы используете свой сервер? С помощью встроенного сервера разработки Flask? –
@MartijnPieters Я поместил все файлы в свой каталог в https://www.pythonanywhere.com/. Я думаю, что на моем компьютере это работает ... У меня есть Windows. –