Python:访问一个接一个发送的数据包
我正在使用MPU-9150。它一次发送一个加速计数据、陀螺仪数据、旋转数据等数据包。为了访问不同的数据包,我使用if语句Python:访问一个接一个发送的数据包,python,python-2.7,Python,Python 2.7,我正在使用MPU-9150。它一次发送一个加速计数据、陀螺仪数据、旋转数据等数据包。为了访问不同的数据包,我使用if语句if self.type==0表示加速计和if self.type==5表示旋转 现在我的问题是如何获得这两个数据包,因为后续的计算要求这两个数据包都可用 self.readings = [0,0,0,0,0,0,0,0,0,0,0,0] #if (self.type == 0) and (self.type == 5): # print "B
if self.type==0表示加速计
和if self.type==5表示旋转
现在我的问题是如何获得这两个数据包,因为后续的计算要求这两个数据包都可用
self.readings = [0,0,0,0,0,0,0,0,0,0,0,0]
#if (self.type == 0) and (self.type == 5):
# print "Both data is available"
counter = 0
while counter < 1:
if self.type == 0:
print "TESTING FOR ACCELERATION"
self.readings[0] = self.data[0]
self.readings[1] = self.data[1]
self.readings[2] = self.data[2]
elif self.type == 5:
print "TESTING FOR ROTATION MATRIX"
self.readings[3] = self.data[0]
self.readings[4] = self.data[1]
self.readings[5] = self.data[2]
self.readings[6] = self.data[3]
self.readings[7] = self.data[4]
self.readings[8] = self.data[5]
self.readings[9] = self.data[6]
self.readings[10] = self.data[7]
self.readings[11] = self.data[8]
else:
print "None of the Conditions are True!"
pass
counter += 1
aX = self.readings[0]
aY = self.readings[1]
aZ = self.readings[2]
print 'Acc in X = ', aX
print 'Acc in Y = ', aY
print 'Acc in Z = ', aZ
r1 = self.readings[3]
r2 = self.readings[4]
r3 = self.readings[5]
r4 = self.readings[6]
r5 = self.readings[7]
r6 = self.readings[8]
r7 = self.readings[9]
r8 = self.readings[10]
r9 = self.readings[11]
print 'rotation matrix: \n%7.3f %7.3f %7.3f\n%7.3f %7.3f %7.3f\n%7.3f %7.3f %7.3f' % \
(r1, r2, r3, \
r4, r5, r6, \
r7, r8, r9)
edit
按钮用于更改原始问题,而不必添加注释。请注意这里的self
指的是什么?看起来您试图将代码放入一个不属于该类的对象/类型中。Self在类的构造函数中声明(在我没有发布的代码中),它指的是上述方法所属的类的实例化对象。好的,我知道面向对象在Python中是如何工作的,我的意思是这里所指的self
是什么,它是哪种类型的,这个类型应该在您的程序中表示什么。看起来它代表一条消息,但您试图在该消息类型的方法中处理多条消息,这在概念上是错误的。