当x时间未触发时,使变量fals

2024-09-28 21:56:57 发布

您现在位置:Python中文网/ 问答频道 /正文

所以根据一个传感器,我发送“触发器”或“无触发器”。我对Python相当陌生(2天),但是我有一点用visualbasic编程的历史。你知道吗

问题是在60秒后没有收到“触发器”时,它应该使变量svars.trigger为FALSE。我该如何使用Python实现这一点?你知道吗

我试着四处寻找,但似乎没有什么与我的意思相符。
另外,任何重写代码的提示我现在总是欢迎的。你知道吗

使用Python2.7的小贴士

import socket
import scalalib as sl

svars = sl.sharedvars(defaults={'trigger': False})
UDP_IP = "192.168.0.219"
UDP_PORT = 5005

sock = socket.socket(socket.AF_INET, socket.SOCK_DGRAM) # UDP
sock.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
sock.bind((UDP_IP, UDP_PORT))

def main():
        data, addr = sock.recvfrom(1024)  # buffer size is 1024 bytes
        if data == 'trigger':
            svars.trigger = True
            print "received message:", data
        if data == 'no trigger':
            svars.trigger = False
            print "received message:", data

while True:
    main()

Tags: importipfalsetruedataifmainport