我是新來的蟒蛇,傳感器和Stackoverflow。我正在uni上的一個項目上通過pyserial在我的電腦的COM4上讀取4個傳感器數據。我寫了下面的代碼來實現:如何分離從串行端口接收到的值並將其作爲單獨的變量存儲在python中?
import serial
ser = serial.Serial('COM4', 9600, timeout=5)
ser.write("\r".encode())
response = ser.read(60)
print (response)
ser.close()
我得到的輸出是這樣的:
b'reply:node01\r\n69\r\n45\r\n117\r\n994\r\n
值69,45,117,994分別是從4個傳感器讀數。我做了一些研究,改變print (response)
到print (response.decode('utf-8'))
,現在我得到它看起來像輸出:
我真的需要分離,並從我最初的輸出或從我後收到的輸出存儲傳感器值一些幫助將print (response.decode('utf-8'))
作爲單獨的變量添加,如field1 = 69,field2 = 45,field3 = 117,field4 = 994。所以,我可以讓這thingspeak API:
https://api.thingspeak.com/update?api_key=XXXXXXXXXXXXXXXXXXX&field1=69&field=45&field3=117&field4=994
PS:可擴展性 - 更多的傳感器數量可在以後這個項目的階段加入,使接收到的數據值的數量也將增加。
請真的需要一些幫助。
調查[str.split()](https://docs.python.org/3/library/stdtypes.html#str.split) ,將您對回車的回覆分開。 – SiHa