Да, это обойдет проблему определения объема работ, и я использую этот метод в других ситуациях; но в этой ситуации файл index.py не должен выполнять какую-либо обработку, он должен только установить несколько значений. Загрузчик фактически отвечает за загрузку другого класса, который выполняет обработку
я есть два файла, один находится в webroot, а другой - в начальной загрузке, расположенной в одной папке над корнем веб-сайта (кстати, это CGI-программирование).
Индексный файл в корневом веб-каталоге импортирует загрузчик и назначает ему переменную, а затем вызывает функцию для инициализации приложения. Все до этого работает как положено.
Теперь в файле начальной загрузки я могу напечатать переменную, но когда я пытаюсь присвоить значение переменной, выдается ошибка. Если вы уберете оператор присваивания, ошибки не выдаются.
Мне действительно любопытно, как работает обзор в этой ситуации. Я могу напечатать переменную, но я не могу присвоить ей. Это на Python 3.
index.py
# Import modules
import sys
import cgitb;
# Enable error reporting
cgitb.enable()
#cgitb.enable(display=0, logdir="/tmp")
# Add the application root to the include path
sys.path.append('path')
# Include the bootstrap
import bootstrap
bootstrap.VAR = 'testVar'
bootstrap.initialize()
bootstrap.py
def initialize():
print('Content-type: text/html\n\n')
print(VAR)
VAR = 'h'
print(VAR)
Благодарю.
Редактировать: сообщение об ошибке
UnboundLocalError: local variable 'VAR' referenced before assignment
args = ("local variable 'VAR' referenced before assignment",)
with_traceback = <built-in method with_traceback of UnboundLocalError object at 0x00C6ACC0>