获取串行输入以正确打印格式到列表

时间:2019-02-11 11:45:02

标签: python list arduino serial-port

我需要获得一个串行输入才能将其数据放入列表中。目前,我正在使用

import serial
import time

ser = serial.Serial('COM3', 9600, timeout=0) #config serial port to read

GRAPH=[0]

t_end = time.time() + 10
while time.time() < t_end:
    try:
        outp=ser.readline() #reads serial port
        GRAPH+=((outp.decode('utf-8'))) #decodes and prints data
        print((outp.decode('utf-8')))
        time.sleep(0.1)

正在打印如下数据:

8.46,

8.76,

9.02,

9.08,

9.43,

9.32,

但是在GRAPH列表中,它显示如下:

'8', '.', '4', '6', ',', '8', '.', '7', '6', ',', '9', '.', '0', '2', ',', '9', '.', '0', '8', ',', '9', '.', '4', '3', ',', '9', '.', '3', '2', ','

我如何将其像打印的值一样放入列表中?

1 个答案:

答案 0 :(得分:0)

如上所述,Nullman需要使用:

GRAPH.append(outp.decode('utf-8')[:-1])

使其正常工作。