Я получаю данные от arduino через Serial (pySerial). Затем он делится на 3 значения разделителем (:). Я использую slice ([0: 5]), чтобы удалить 2 дополнительных символа (я думаю, это новая строка).Неверное начало нулевого/нулевого заполнения не работает
Пока все хорошо. Но тогда rjust или zfill или даже format() просто не работают должным образом. Если я использую zfill (5), например, и значение, выводимое arduino, равно 8.00, изменений нет, и я получаю 3 символа. Если я использую zfill (7), тогда он работает, и я получаю 7 общих символов.
Что происходит?
Arduino выводит это каждые ~ 1 секунды: 22.00: 36.00: 58,00
import time
import serial
connected = False
port = '/dev/ttyACM0'
baud = 9600
ser = serial.Serial(port, baud)
# loop until arduino is ready
while not connected:
serin = ser.read()
connected = True
# read aruino output
while ser.readline():
readings = ser.readline().split(':', 2)
lum = readings[2][0:5].rjust(5, '0')
#lum = readings[2][0:5].zfill(5) same result as with rjust
print(lum)
time.sleep(1)
Я использую Arduino Uno, связанные с Raspberry Pi работающей Rasberian OS с IDLE как редактор питона.
То есть! Спасибо! – DominicM
@ DominicM, [Принять ответ] (http://stackoverflow.com/help/accepted-answer). – falsetru
+1 для чтения между линиями :) –