我想用 python 读取串行端口,并用 readline 打印结果,但我在所有结果行之间得到空行。你能告诉我如何删除所有空行吗?
我的代码:
#!/usr/bin/python
import serial
import time
import sys
ser = serial.Serial("/dev/ttyACM0", 9600)
print ser.readline()
print ser.readline()
print ser.readline()
print ser.readline()
print ser.readline()
我从后面尝试了几个答案,但仍然有空行。我的 txt 文件如下所示:
T: 59.30% 22.20 8% 11% N
T: 59.80% 22.20 8% 11% N
T: 59.80% 22.20 8% 11% N
T: 59.80% 22.20 8% 11% N
但我需要这样的文件:
T: 59.30% 22.20 8% 11% N
T: 59.80% 22.20 8% 11% N
T: 59.80% 22.20 8% 11% N
T: 59.80% 22.20 8% 11% N
编辑:
找到解决该问题的方法:
line = ser.readline().decode('utf-8')[:-2]
现在一切正常。这个 -2 删除/n 就这样了。
最佳答案
或者:
import serial
with serial.Serial("/dev/ttyACM0", 9600) as ser:
for line in ser:
print line.rstrip('\n')
或
import serial
with serial.Serial("/dev/ttyACM0", 9600) as ser:
for line in ser:
print line,
关于Python readline 空行,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/16509569/