我有一个主文件 fileA.py
,根据GPIO触发器控制广播室的灯光。我关心的部分在下面的While True循环中:
While True:
#other triggers for other things unrelated
if GPIO.input(25) == GPIO.LOW and (state) = 'off':
blue()
studiostatus = "online"
#other triggers for other things unrelated
elif count > 7200:
dbo()
clockoff()
studiostatus = "offline"
同时,在同一台树莓派上,我还有第二个 Python 文件 fileB.py
正在运行。
import SocketServer
from BaseHTTPServer import BaseHTTPRequestHandler
def some_function():
print "some_function got called"
class MyHandler(BaseHTTPRequestHandler):
def do_GET(self):
if self.path == '/doorbell':
some_function()
self.send_response(200)
httpd = SocketServer.TCPServer(("", 8080), MyHandler)
httpd.serve_forever()
然而,我希望这能够根据fileA.py
中的studiostatus
变量持续更新,以便fileB.py
中的行变成:
if self.path == '/doorbell' and studiostatus = "online":
action1()
elif self.path == '/doorbell' and studiostatus = "offline":
action2()
非常感谢任何帮助,因为目前我无法看清最好的处理方式。
.txt
文件,然后从另一个脚本中读取它。更加不优雅的解决方案是将循环放在一个函数中,在fileB
中导入fileA
并在声明所需变量为全局变量的同时运行该函数。 - Abdur RakibfileB
每0.2秒左右就必须打开并读取它,这对于运行24/7的树莓派SD卡来说绝对不好! - Adam Davies