Arduino - python读取串行布局

时间:2014-11-11 22:35:43

标签: python arduino pyserial

我正在使用pyserial从我的Arduino中读取一些值。 使用serial.readlines()给我一个包含所有值的数组, 但这些值看起来像:

  • b'l: steer left \n'
  • b'r: steer right \n'

如何摆脱这些b'\n'? 取代它们并不起作用......

1 个答案:

答案 0 :(得分:0)

b表示字符串所在的编码 - 它实际上并不是字符串的一部分,因此您无法替换它。与每个'类似 - 它们表示 是一个字符串。 (4'4'是两个不同的东西,但print(…)其中任何一个都会得到相同的结果。)您唯一需要做的就是删除最后一个字符(换行符

myvar[:-1]

要重新编码字符串,这应该足够了:

b'string'.decode('ascii')

如果你完全使用Unicode,请使用

b'string'.decode('utf-8')

代替。有关详细信息,请参阅Python manual


Python 3.4.2 (default, Oct 19 2014, 17:55:38) 
[GCC 4.2.1 Compatible Apple LLVM 6.0 (clang-600.0.54)] on darwin
Type "help", "copyright", "credits" or "license" for more information.
>>> b'l: steer left \n'
b'l: steer left \n'
>>> _.decode('ascii')
'l: steer left \n'
>>> print(_)
l: steer left 

>>> exit()