Изменить переменную процесса - PullRequest
0 голосов
/ 15 мая 2019

У меня есть программа на Python, которая периодически выполняет некоторые работы в соответствии с этим значением данной глобальной переменной «a».Как может другая программа на Python изменить значение «a» на (скажем) 20?

a = 10
def run_program():
    global a
    while True:
        time.sleep(1)
        print(a)

Я пробовал с сигналами ОС, но сигнал (например, USR1) не может передавать переменные

Любая помощь?

1 Ответ

1 голос
/ 15 мая 2019

Вы можете использовать переменную среды, изменить ее в первой программе и использовать ее во второй:

Программная:

import os
# Set environment variables
os.environ['YOUR_VARIABLE'] = 10

Вторая программа:

import os
def run_program():
    a = os.environ.get('YOUR_VARIABLE')
    while True:
        time.sleep(1)
        print(a)

Также обратите внимание, что при использовании этой идеи вы избегаете использования глобальной переменной.

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