TypeError:不支持的类型:';int'';非类型';用Python

TypeError:不支持的类型:';int'';非类型';用Python,python,micropython,bbc-microbit,Python,Micropython,Bbc Microbit,我正在为客户机编写一个程序,该程序通过客户机记录的内置平均值无线电从服务器接收平均值字符串。我得到一个类型错误,它说:“不支持的类型为:'int'、'NoneType'” 这是我的密码: from microbit import * import radio radio.on() blink = Image("99999:" "99999:" "99999:" "99999:" "

我正在为客户机编写一个程序,该程序通过客户机记录的内置平均值无线电从服务器接收平均值字符串。我得到一个类型错误,它说:“不支持的类型为:'int'、'NoneType'”

这是我的密码:

from microbit import *
import radio

radio.on()

blink = Image("99999:"
              "99999:"
              "99999:"
              "99999:"
              "99999")


radio.send("power on")

while True:
   incoming = radio.receive()
   if incoming is not None:
      incoming = float(incoming)

   sleep(500 - running_time() % 500)
   acceleration = accelerometer.get_z()
   radio.send(str(acceleration))
   acceleration = float(acceleration)

   if acceleration > 2 * incoming or acceleration < .5 * incoming:
       display.show(blink)
       microbit.sleep(150)
       display.clear()
       microbit.sleep(150)
来自microbit导入的
*
进口收音机
电台
闪烁=图像(“99999:
"99999:"
"99999:"
"99999:"
"99999")
无线电发送(“开机”)
尽管如此:
传入=无线电接收()
如果传入不是无:
传入=浮点(传入)
睡眠(500-运行时间()%500)
加速度=加速计。get_z()
无线电发送(str(加速))
加速度=浮动(加速度)
如果加速度>2*输入或加速度<.5*输入:
显示。显示(闪烁)
微比特睡眠(150)
display.clear()
微比特睡眠(150)
错误发生在这一行:

if acceleration > 2 * incoming or acceleration < .5 * incoming:
如果加速度>2*输入或加速度<.5*输入:
试试这个:

from microbit import *
import radio

radio.on()

blink = Image("99999:"
              "99999:"
              "99999:"
              "99999:"
              "99999")


radio.send("power on")

while True:
   incoming = radio.receive()
   if incoming is not None:
      incoming = float(incoming)

      sleep(500 - running_time() % 500)
      acceleration = accelerometer.get_z()
      radio.send(str(acceleration))
      acceleration = float(acceleration)

      if acceleration > 2 * incoming or acceleration < .5 * incoming:
          display.show(blink)
          microbit.sleep(150)
          display.clear()
          microbit.sleep(150)
来自microbit导入的
*
进口收音机
电台
闪烁=图像(“99999:
"99999:"
"99999:"
"99999:"
"99999")
无线电发送(“开机”)
尽管如此:
传入=无线电接收()
如果传入不是无:
传入=浮点(传入)
睡眠(500-运行时间()%500)
加速度=加速计。get_z()
无线电发送(str(加速))
加速度=浮动(加速度)
如果加速度>2*输入或加速度<.5*输入:
显示。显示(闪烁)
微比特睡眠(150)
display.clear()
微比特睡眠(150)

基本原理:您的代码(发布时)执行第一个
if
,检查
传入的
是否为
。但是,在前面的缩进级别上有以下代码块,因此,当
传入
时,这些代码块也会执行。我认为您缺少缩进(对于最后一个
if
)…
传入
保留