所以我从twitter上得到了一个提及的列表,并且需要知道每个提及的索引。为此,我使用:
for idx, result in enumerate(mentions, start = 48):
message = result['text']
print idx, message
它回来了
48 " first message"
一如预期。但是,我需要将这个索引用于一些串行数据,这些串行数据需要我将索引转换为十六进制。所以。。我使用:
hidx = hex(idx)
然后返回0x30。但是,我需要以“\x30”的精确格式生成此结果,以便使用serial写入:
serial.write("\x30")
实现这一目标的最佳方法是什么?如果我保持十六进制转换的索引代码的方式,我会得到讨厌的额外0和没有反斜杠,导致串行代码实际写入serial.write(0x30),这不是我需要的。我希望找到一种方法,因为for循环,我将收到:
serial.write("\x30")
serial.write("\x31")
serial.write("\x32")
等等。尽可能多的提及。 有没有办法去掉第一个零,再加上\?也许是更好的方法?我是python和串行通信的新手,所以任何帮助都将不胜感激
(假设Python 2)
"\x30"
是一个1字节的字符串,所讨论的字节是ASCII代码48处的字节:所以,要发出它所需要做的就是
serial.write(chr(idx))
不需要弄乱hex相关问题 更多 >
编程相关推荐