Каждый раз, когда вы запускаете скрипт на Python, он начинается с чистого листа. Переменные еще не определены, нет некоторой волшебной памяти, которую Python использует для восстановления переменных, созданных в предыдущем запуске скрипта.
Если вам нужно такое поведение, вам придется хранить свои переменные самостоятельно, например, используя pickle
(обратите внимание, что это, вероятно, не будет работать, если вы общаетесь с каким-либо удаленным сервером).
Другое решение - запускать скрипт на неопределенный срок и заставлять его выполнять какую-то работу каждые x
секунд. Или запросить ввод пользователя:
import os
import numpy as np
from VPPP import VPP, Forecast
vpp = VPP(foo=foo, bar=bar, ...)
forecast = Forecast('my_filename')
mapping = {'Forecast': 'PConInput.ys[xxx]', 'Price': 'tariffInput.ys[xxx]'}
while True:
try:
raw_input('Press enter to start. Ctrl-C to exit.')
except KeyboardInterrupt:
break
fnext = forecast.predict(startday=146, nb_days=2)
vpp.adapt_forecasts(fnext, mapping)
vpp.optimize()
Теперь, если вы нажмете Enter, будут выполнены последние три строки. Вы можете нажать Ctrl-C для выхода.
(NB. Для Python 3 изменить raw_input
на input
.)