因为控制机器人依赖于复杂的部分,例如它们有多少条腿,它们有多少个关节等等,我认为没有你想要的库。而且python上的连接阶段太简单了,无法制作库。
这里是简单的 UDP 客户端/服务器代码:
UDP 服务器
import socket, traceback
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_REUSEADDR, 1)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
s.bind(('', 5000))
print "Listening for broadcasts..."
while 1:
try:
message, address = s.recvfrom(8192)
print "Got message from %s: %s" % (address, message)
s.sendto("Hello from server", address)
print "Listening for broadcasts..."
except (KeyboardInterrupt, SystemExit):
raise
except:
traceback.print_exc()
UDP 客户端
import socket, sys
dest = ('<broadcast>', 5000)
s = socket.socket(socket.AF_INET, socket.SOCK_DGRAM)
s.setsockopt(socket.SOL_SOCKET, socket.SO_BROADCAST, 1)
s.sendto("Hello from client", dest)
print "Listening for replies."
while 1:
(buf, address) = s.recvfrom(2048)
if not len(buf):
break
print "Received from %s: %s" % (address, buf)
s.sendto("echo", dest)
另外,如果您有复杂的逻辑,需要拆分成多个部分,可以是通信、控制或 I/O,请参阅事件驱动编程:http://etutorials.org/Programming/Python+tutorial/Part+IV+Network+and+Web+Programming/Chapter+19.+Sockets+and+Server-Side+Network+Protocol+Modules/19.3+Event-Driven+Socket+Programs/)