繁体   English   中英

继续循环并继续前进(Python)

[英]Continuing a Loop and Moving On (Python)

我的Python应用程序(v2.7)中有一个“ while”循环,该循环基本上与Bluetooth GPS设备通信,并且只要接收到数据,循环就持续进行。 本质上,while循环看起来像这样:

> data = ""
> 
> if data == None:
>     print "Connection Failed" else:
>     print "Connection Established"
> 
> while True:
>     data = socket.recv(1024)

现在,我要做的是在程序的整个生命周期中让此while循环不断运行,直到关闭蓝牙设备为止,这又将由于没有数据接收而结束循环。 尽管如此,随着while循环的继续,我然后想转到另一个将解析数据的方法。

如何使循环运行并继续执行下一个命令? 需要穿线吗? 我是线程概念的新手,所以请耐心等待:)

谢谢

是的,因为实际上您将同时做两件事,所以您必须创建一个新线程(使用threading ),或者可能更简单地创建一个新进程(使用multiprocessing或仅使用os.fork

最简单的方法是将此部分放入函数中,并使用multiprocessingthreading在不同的进程中启动该函数。 通常,与多个线程相比,与FYI相比,您对多个进程的怪异更少。

received = ""
while True:
     data = socket.recv(1024)
     if not data:
         break # ends the while loop
     received+=data

do_stuff(received)

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM