我是Micro:bit python的初学者。我正在编写“Rock,Paper,Scissors'有得分系统的比赛。然而,它响应于摇动一次然后自动显示图片,即使没有人摇晃它。你能建议一种方法解决这个问题吗?
from microbit import *
import random
count = 0
paper = Image("99999:"
"90009:"
"90009:"
"90009:"
"99999")
rock = Image("00000:"
"09990:"
"09990:"
"09990:"
"00000:")
scissors = Image("00099:"
"99090:"
"00900:"
"99090:"
"00099:")
while True:
while True:
if accelerometer.is_gesture("shake"):
display.clear()
choice = random.randint(0, 2)
if choice == 0:
display.show(rock)
break
elif choice == 1:
display.show(paper)
break
else:
display.show(scissors)
break
while True:
if button_a.is_pressed():
count = count + 1
display.scroll(str(count))
break
elif button_b.is_pressed():
count = count - 1
display.scroll(str(count))
break
elif pin0.is_touched():
display.scroll(str(count))
break
答案 0 :(得分:0)
从我从文档中可以理解的,
尝试更改此行代码:
if accelerometer.is_gesture("shake"):
至if accelerometer.was_gesture("shake"):
他们的差异,来自文档:
for is_gesture:
返回True或False以指示命名手势当前是否处于活动状态。
for was_gesture:
返回True或False以指示自上次调用以来指定的手势是否处于活动状态。