我需要有关从我的设备访问加速度值的帮助,我能够读取值并更新相应的label.text。但在.kv文件中,我无法对访问的值进行任何计算,只是更新了label.text即可,但是如果尝试将其记录到文件中(使用文件处理功能)或将值附加到列表中(usinf list.append),则会发生错误,它们是上述方法的替代方案。.
编辑:
lst = []
class AppLayout(FloatLayout):
def __init__(self):
super(AppLayout,self).__init__()
self.sensor_status = True
def do_toggle(self):
if self.sensor_status:
try:
accelerometer.enable()
Clock.schedule_interval(self.get_acceleration,1.0/24)
self.sensor_status = False
self.ids.togglebutton.text = 'Stop'
except():
self.ids.value.text = 'Failed'
else:
self.sensor_status = True
self.ids.togglebutton.text = 'Start'
self.ids.value.text = 'start again'
accelerometer.disable()
Clock.unschedule(self.get_acceleration)
def get_acceleration(self,dt):
try:
self.ids.value.text= str(accelerometer.acceleration[0])
#lst.append.str(accelerometer.acceleration[0])
#self.module.write.text = str(accelerometer.acceleration[0])
except:
self.ids.value.text = 'Failed to read'
class AccelerometerApp(App):
def build(self):
return AppLayout()
if __name__=="__main__":
AccelerometerApp().run()
以上代码可用于更新标签..如果我将任何其他行添加到get_acceleration函数(注释行)..加速度计无法提供值..我是否采用这种错误的方式..还是我应该继续学习猕猴桃..?