Как автоматически перезагрузить модуль Python без перезагрузки приложения? - PullRequest
0 голосов
/ 13 марта 2019

Я заинтересован в адаптации файла Python после запуска приложения.Предположим, у нас есть скрипт:

import time

while True:
    time.sleep(10)
    print(2)

Я запускаю его, поэтому он печатает число 2 каждые 10 секунд.Я хотел бы иметь возможность изменить 2 на 5, чтобы мне не нужно было перезапускать скрипт, но вывод изменился на 5.

Этот механизм каким-то образом реализован в Django послефайл отредактирован, данные на сервере перезагружены.

Редактировать:

import time
from importlib import reload
import data

while True:
    reload(data)
    print(data.some_data)
    time.sleep(1)

что-то вроде этого сделало бы работу, но, может быть, есть лучший способ добиться такого поведения?

1 Ответ

0 голосов
/ 13 марта 2019

Вы можете создать отдельный файл для управления динамическим контентом.Затем импортируйте необходимые данные из этого файла.

data.py

some_data = 10

script.py

import time
from .data import some_data

while True:
    time.sleep(10)
    print(some_data)

, а затем вы можете просто отредактировать значениев data.py любое значение без перезапуска скрипта.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...