Python 如何更改pySerial中的行终止符(行尾字符,EOL)
在PySerial的当前版本(>3.4)中,如何更改行尾(EOL,有时称为终止符)字符?是的,但我从未使用过Python 如何更改pySerial中的行终止符(行尾字符,EOL),python,pyserial,Python,Pyserial,在PySerial的当前版本(>3.4)中,如何更改行尾(EOL,有时称为终止符)字符?是的,但我从未使用过io模块,简短介绍中给出的示例与我的用例相去甚远。有没有更简单的方法?类似Matlab的东西 s = serial('COM3'); s.Terminator = 'CR'; s.open() 我只希望能够在使用CR指示换行的设备上执行readline()。根据链接调整示例,添加newline参数,如文档中所述: >>> help(io.TextIOWrapper) H
io
模块,简短介绍中给出的示例与我的用例相去甚远。有没有更简单的方法?类似Matlab的东西
s = serial('COM3');
s.Terminator = 'CR';
s.open()
我只希望能够在使用
CR
指示换行的设备上执行readline()
。根据链接调整示例,添加newline
参数,如文档中所述:
>>> help(io.TextIOWrapper)
Help on class TextIOWrapper in module io:
class TextIOWrapper(_TextIOBase)
...
|
| newline controls how line endings are handled. It can be None, '',
| '\n', '\r', and '\r\n'.
修改样本:
import serial
import io
ser = serial.serial_for_url('loop://', timeout=1)
sio = io.TextIOWrapper(io.BufferedRWPair(ser, ser),newline="\r")
现在,
readline
遇到\r
字符时会停止。我读了一些书,现在问这个问题觉得有点傻。我被serial\u for_url('loop://',…)
绊倒了,在我看来,这就像是一些我不需要的web内容。我没有意识到“loop://”只是用于测试,在我的例子中,我可以简单地将其替换为“COM3”。虽然在标题中指定了一个古老的2.6版本,但在这里却非常相关。是的,它现在看起来像是一个副本,只是经过筛选以保持最新的内容。我会这样做的。