Разбор последовательных данных, считанных с USB с использованием Python
Я совершенно новичок в питоне.
Я использую следующий код для рисования данных с устройства USB, которое печатает данные на моем Raspberry Pi с помощью printf(). Я использую следующий код Python, чтобы прочитать эти данные и распечатать их на экране:
#!/usr/bin/python
import serial
ser = serial.Serial(
port='/dev/ttyUSB0',\
baudrate=115200,\
parity=serial.PARITY_NONE,\
stopbits=serial.STOPBITS_ONE,\
bytesize=serial.EIGHTBITS,\
timeout=0)
print("connected to: " + ser.portstr)
ser.write("help\n");
while True:
line = ser.readline();
if line:
print(line),
ser.close()
код печатает следующий результат, как и ожидалось (для этого я использую printf ()):
Received Ticks are: 380 and nodeID is: 1
Как я могу разобрать строковую переменную, чтобы я мог сохранить число Ticks (380) и nodeID (1) в две переменные, чтобы я мог использовать эти переменные для запроса HTTP POST в python?
1 ответ
Решение
Разбить строку, а затем взять части, которые вы хотите:
>>> s = "Received Ticks are: 380 and nodeID is: 1"
>>> s.split()
['Received', 'Ticks', 'are:', '380', 'and', 'nodeID', 'is:', '1']
>>> words = s.split()
>>> words[3]
'380'
>>> words[7]
'1'
>>>