我有一个python程序,它根据给定的全局变量“ a”的值定期执行一些工作。 另一个python程序如何将“ a”的值更改为(假设)20?
a = 10
def run_program():
global a
while True:
time.sleep(1)
print(a)
我尝试使用OS信号,但是信号(例如USR1)无法传递变量
有帮助吗?
答案 0 :(得分:1)
您可以使用环境变量,在第一个程序中对其进行修改,然后在第二个程序中对其进行使用:
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)
还请注意,使用这种想法可以避免使用全局变量。