簡體   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