Python PySerial readline函数错误使用
我正在使用一个脚本,导入了PySerial库来从COM4读取数据。
我想要拦截的消息都是以几个#符号结尾的。
所以我尝试使用了:
bus.readline(eol='##')
这里的bus是我的连接。
我本来希望能读取到这样的内容:
- *#*3##
- *#*3##
- *#*3##
但不幸的是,我还发现了:
- *#*1##*1*1*99##
我本来希望能把它分成两行来读取:
- *#*1##
- *1*1*99##
显然,readline这个功能没有正常工作,但这是为什么呢?
1 个回答
3
在pyserial中,readline()
这个方法是一次读取一个字符,并且会把这个字符和结束行符(EOL)进行比较。你不能一次指定多个字符作为结束行符。如果你需要处理多个字符,你得先把所有字符读进来,然后再用string.split()
或者re.split()
来分开。